mysql优化思路
/*mysql优化思路 1.数据库设计 2.sql语句优化 3.数据库参数设置 4.恰当的硬件资源和操作系统 数据库设计 数据的3NF(3范式) 逆范式 3NF解释 1NF:就是具有原子性,不可分割。(只要使用的是关系型数据库,就自动符合) 2NF:在满足1NF的基础上,我们考虑是否满足2NF,只要表的记录满足唯一性, 同一张表,不可能出现完全相同的记录,(表中设计主键即可) 3NF:在满足2NF的基础上,我们考虑是否满足3NF,即我们的字段信息可以通过关联的关系 派生即可(通过外键即可处理) 逆范式解释: sql统计sql语句 show status 语句 1.查看当前执行select语句次数 show status like 'Com_select'; show session status like 'Com_select'; 当前次数 show global status like 'Com_select';全部次数 2.当前mysql连接次数 show status like'connections'; 3.当前mysql连接时间 show status like'uptime'; 4.慢查询状态 show variables like '%quer%'; 5.慢查询默认时间 show variables like 'long_query_time'; 6.explain检测sql语句 explain sql语句索引 索引类型 1.主键索引 primay key 2.普通索引 index 3.唯一索引 unique 4.全文索引 fulltext 5.符合索引 创建索引 create [unique | fulltext] index 索引名 on 表名(列名); alter table 表名 add index 索引名(列名); alter table 表名 add primary key(列名); 删除索引 drop index 索引名 on 表名; alter table 表名 drop index 索引名 alter table 表名 drop primary key(列名) 显示索引 show index(es) from 表名 show keys from 表名 desc 表名 索引注意: 下列情况不回使用索引 1.多列索引只在左边第一列使用索引 其余列屏蔽索引 2.like‘%赵猛’ %开始将屏蔽索引 3.where 条件 or 条件 sql语句出现or屏蔽索引 4.数字型 id=2 数字型不加引号屏蔽索引查看索引使用率 show status like 'handler_read%'; */
|
浙公网安备 33010602011771号