主页 > 教育培训 > 电脑培训 > 正文

MySQL学习:数据库十大优化技巧(3)

[作者:ardlr]
2012-11-21 17:38

  8. 从PROCEDURE ANALYSE()中获得建议

  PROCEDURE ANALYSE()可让MySQL的柱结构分析和表中的实际数据来给你一些建议。如果你的表中已经存在实际数据了,能为你的重大决策服务。

  

mysql-database-optimization

 

  9. 准备好的语句

  准备好的语句,可以从性能优化和安全两方面对大家有所帮助。

  准备好的语句在过滤已经绑定的变量默认情况下,能给应用程序以有效的保护,防止SQL注入攻击。当然你也可以手动过滤,不过由于大多数程序员健忘的性格,很难达到效果。

  //create a prepared statement

  if ($stmt = $mysqli->prepare("SELECT username FROM user WHERE state=?")) {

  // bind parameters

  $stmt->bind_param("s", $state);

  // execute

  $stmt->execute();

  // bind result variables

  $stmt->bind_result($username);

  // fetch value

  $stmt->fetch();

  printf("%s is from %s\n", $username, $state);

  $stmt->close();

  }

  10. 将IP地址存储为无符号整型

  许多php程序员在创建一个VARCHAR(15)时并没有意识到他们可以将IP地址以整数形式来存储。当你有一个INT类型时,你只占用4个字节的空间,这是一个固定大小的领域。

  你必须确定你所操作的列是一个UNSIGNED INT类型的,因为IP地址将使用32位unsigned integer。

  $r = “UPDATE users SET ip = INET_ATON(‘{$_SERVER['REMOTE_ADDR']}’) WHERE user_id = $user_id”;

猜你喜欢

编辑推荐

相关内容

推荐阅读

加载中...
没有更多了
X