MySQL高性能优化规范SQL处理分

21CTO导读:由博客园博主听风(ID:huchong)撰写的《MySQL高性能优化系列》已完结,目录如下:

Mysql高性能优化规范建议

电商数据库表设计

MySQL分区表使用方法

MySQL中EXPLAIN执行计划分析

电商场景下的常见业务SQL处理

MySQL慢查询日志的使用

MySQL数据库备份详解

MySQL主从复制架构使用方法

MySQL主主复制架构使用方法

如何MySQL读压力大的问题

次系列地址在文末,下面选取了该系列第一篇以飨读者:

数据库命令规范

所有数据库对象名称必须使用小写字母并用下划线分割

所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来)

数据库对象的命名要能做到见名识意,并且最后不要超过32个字符

临时库表必须以tmp_为前缀并以日期为后缀,备份表必须以bak_为前缀并以日期(时间戳)为后缀

所有存储相同数据的列名和列类型必须一致(一般作为关联列,如果查询时关联列类型不一致会自动进行数据类型隐式转换,会造成列上的索引失效,导致查询效率降低)

数据库基本设计规范

1.所有表必须使用Innodb存储引擎

没有特殊要求(即Innodb无法满足的功能如:列存储,存储空间数据等)的情况下,所有表必须使用Innodb存储引擎(mysql5.5之前默认使用Myisam,5.6以后默认的为Innodb)

Innodb支持事务,支持行级锁,更好的恢复性,高并发下性能更好

2.数据库和表的字符集统一使用UTF8

兼容性更好,统一字符集可以避免由于字符集转换产生的乱码,不同的字符集进行比较前需要进行转换会造成索引失效,如果数据库中有存储emoji表情的需要,字符集需要采用utf8mb4字符集

3.所有表和字段都需要添加注释

使用


转载请注明:http://www.aierlanlan.com/cyrz/858.html

  • 上一篇文章:
  •   
  • 下一篇文章: