EspañolDeutschFrançaisItalianoPortuguêsРусскийΕλληνικά日本語中文(简体)हिन्दी; हिंदीالعربية
设置为默认语言
PF 问题 - 论坛

的 10 关于 MySQL 我们使 PHP 程序员的主要 bug

站长和 SEO  
 
的 10 关于 MySQL 我们使 PHP 程序员的主要 bug

当程序在 PHP 和您的应用程序开始有一定 翼展, 最符合逻辑的事是,你需要支持你在 数据库管理系统 存储和操纵任何关于相同的数据. 在 PHP 的情况下, 在更大程度上使用的系统是 MySQL.

真不容易 建立一个坚实的数据库, 可靠, 是没有不一致和漏洞和, 因此, 有一个基于任何结构 正常形式 最常用的. 所以它是正常的, 作为 php 程序员, 落到任何的 主要错误 使用时 MySQL.

 

1. 使用而不是 inob myisam

myisam 是配置的引擎 默认情况下 在安装 MySQL 但, 除非你仍然有你的项目或你的数据库在开发中是很简单的, ES 明智的做法 使用 innodb. 这承认 交易, 对数据的完整性至关重要. 另外, 在插入或更新记录时, 只有块到这个, 而不是到 整张桌子 因为它不 myisam, 有一个积极的影响后, 性能, 首先在 圣经.

 

2. 不要使用适用于 php 的 mysql 的函数

PHP 提供 特定功能 用于连接和使用 MySQL. 函数, 如 mysql _ connect, mysql _ query, … 这些职能是 改进 对于大于或等于 4.1.3, 所以它是明智的使用这最后, 调用 MySQLi. 这将提供一系列 优势 作为一个接口 面向对象, 攻击预防 使用 sql 注入 备报表, 性能提升, 等.

 

3. 不要对用户条目进行消毒

没有清理 用户, 并使用它们来创建 sql 语句, 在数据库上执行, 我们正在产生一个 漏洞 允许 sql 代码的注入 在字段中, 我们从这些值.

如果, 通过 示例, 我们正在处理一个 用户登录, 并获取表单数据, 我们直接通过以下方式分配给它们:

如果在现场 名称 我们介绍的价值 “行政管理; –“ (未使用引号), 链 生成的 sql 将如下所示:

与用户 会同意 直接 无需介绍 任何一种的 密码, 除了以管理员身份加入, 如果 管理员 它是一些管理员用户名.

 

4. 不要使用 utf-8 编码

使用此编码 避免许多问题国际化, 既然我们必须记住, 我们的网站不仅会从我们自己的国家访问 ", 但从其字符集的国家 他们有很大的不同 古德费拉斯.

 

5. 使用 php 执行所有操作

使用 php 语言执行任何编码都是很常见的, 即使是那些功能, 这将是很多 更快 如果你让他们 经理 数据库. 举个例子, 使用 回路 php 来计算 平均, 将一组记录的所有值相加, 而不是使用本机 mysql 函数, Avg().

在以同样的方式, 有编码的可能性 内部程序和职能 在自己的数据库中, 青睐性能 我们在全球范围内的应用.

 

6. 不优化查询

99% 是 php 应用程序性能问题 由数据库引起. 你必须意识到, 一个简单的 错误的查询 它可能会导致 瓶颈 在我们的网站上, 因此, 建议执行 优化 磋商 .

有应用和 脚本 您将查看您的服务器 MySQL 会给你 小贴士 以提高他们的性能, 以及他们将向您显示可能的查询, 应进行优化.

 

7. 使用不正确的数据类型

MySQL 提供了一组 不同的数据类型 (数字, 链, 时间, 日期, …). 如果你要存储一个 日期, 使用类型 给你 o Datetime, 而不是使用 整数 o 字符串, 做更多 复杂 协商.

经常, 是诱人的, 以创建您的 自己的数据类型 并将它们存储在数据库中, 作为 php 序列化对象. 虽然数据库的管理会更容易, 你 将防止 轻松执行 搜索和查询 关于存储的数据.

 

8. 使用星号 (*) 在选择查询中

切勿使用星号 在磋商中 选择, 除非它是 严格 必要. 尽量在你真正需要的领域做咨询, 其他的则是磨损的资源 在徒劳的.

 

9. 不编制索引或不编制索引

通常, 的 指标 它们适用于 select 查询将在其上执行其 where, 通过有用的 创建索引 对于查询, 消耗更多资源 和那些通常使用.

在以同样的方式, 的添加 每列的索引 你可以做到这一点 下降性能 因为服务器, 他们必须是 再生 用于表的每次插入或更新.

 

10. 忘记备份

信不信由你, 数据库 失败, 以及硬盘驱动器或任何其他硬件或软件, 可能具有您托管数据库的服务器. 如果您的 web 应用程序有某些 重要性, 想象一下, 失去所有关于它的信息.

为了避免这种, 通常情况下, 定期进行备份, 或只是, 安排他们 进行 自动.

 

你怎么能看到, 这些只是 10 主要错误 php 开发人员在使用数据库管理器时可以或倾向于提交 MySQL. 不用说,, 除此之外,, 所以众所周知, 系统数据库, 有 其他解决方案 一样 可靠和良好的, 它们也可能是任何项目或 web 应用程序的选项, 我们必须在 php 下开发.

我们的留言或输入到论坛
Share on Facebook Tweet about this on Twitter Share on Google+ Pin on Pinterest Share on Reddit Share on VK Share on StumbleUpon Share on Tumblr Share on LinkedIn Email this to someone Print this page

相关的文章