Mysql数据库优化工具PROCEDURE ANALYSE介绍
最近因为有人问到我数据库优化需要注意那些方面,于是又再次想起了PROCEDURE ANALYSE这个Mysql自带的步骤分析工具。下面我来简单介绍一下此函数用法。
PROCEDURE ANYLYSE通过分析SELECT 查询结果对现有的表的每一列给出优化的条件。
语法如下:
SELECT ... ROM table_name WHERE ... PROCEDURE ANALYSE([max_elements,[max_memory]]);
-
max_elements (默认值 256) 是analyse注意到每列不同值的最高数目。analyse使用此参数来检查是否最优化的列的类型是ENUM类型。
-
max_memory (默认值 8192) 是analyse在查找所有不同值时分配给每列的最大内存数。
实例代码如下:
这里我们只看一个字段USERNAME,通过分析结果我们可以看到最小值是user1,最大值是user2;允许的最小值是5,最大值是5;空字符串或0的个数为0;值为空的字段数为0;平均每个字段的值为5,默认值是NULL,以及给出的建议是ENUM(\'user1\',\'user2\') NOT NULL;