PHP 之Mysql优化
一、建立索引 普通索引 index: 对关键字没有要求。 唯一索引 unique index: 要求关键字不能重复。同时增加唯一约束。 主键索引 primary key: 要求关键字不能重复,也不能为NULL。同时增加主键约束。 全文索引 fulltext key: 关键字的来源不是所有字段的数据,而是从字段中提取的特别关键词。 索引的管理: 建表时 更新表结构 1、前缀索引 建立前缀索引的语法: alter table test add KEY (name(5)); name一定是字符类型(索引字段),5为长度 那好,如何确定取前面几个字符呢?显然,这个场景是一个观察的结果,也就是说,必须要有一定量的实际数据,我们才能分析出其规律,也就是说这个索引是在后期优化得来的,前期没必要建立。 计算不重复的概率: select COUNT(DISTINCT name) / COUNT(*) as rate from test; 找出接近rate的一个n(试出最合理的n) select COUNT(DISTINCT LEFT(name, 3)) / COUNT() as rate3 from test; select COUNT(DISTINCT LEFT(name, 5)) / COUNT() as rate5 from test; select COUNT(DISTINCT LEFT