《高性能MySQL》第四章总结

MySQL |11个月前 |0

MySQL


良好的 schema 设计原则是普遍适用的,但 MySQL 有它自己的实现细节要注意。概括来说,尽可能保持任何东西最小而简单总是好的。MySQL 喜欢简单,需要使用 MySQL 的人应该也同样会喜欢简单的原则:

  • 尽量避免过度设计,例如会导致极其复杂查询的 schema 设计,或者有很多列的表设计(很多的意思是介于有点多和非常多之间)。
  • 使用小儿简单的合适数据类型,除非真实数据模型有确切的需要,否则应该尽可能的避免使用 NULL 值。
  • 尽量使用相同的数据类型存储相似或相关的值,尤其是要在关联条件中使用的列。
  • 注意可变长字符串在临时表和排序时可能导致悲观的按最大长度分配内存。
  • 尽量使用整型定义标识列。
  • 避免使用 MySQL 已经遗弃的特性,例如指定浮点数的精度,或者整数的显示宽度。
  • 小心使用 ENUMSET。虽然他们用起来很方便,但是不要滥用,否则有时候会变成陷阱。最好避免使用 BIT

    范式是好的,但反范式(大多数情况下意味着重复数据)有时也是必需的,并且能带来好处。

MeiWJ
A PHP Web Artisan

完善源自用心 細節決定成敗