韩锋大师分享了一个
Mysql的
性能优化工具,一个能自动采集
sql优化相关各种信息的
python脚本,对于优化人员而言,这能省不少事,赞!
试用了一下,发现在
mysql5.7下,运行不起来,细节上还是有好几个坑的,费了一些周折,终于把坑踩完了,现在把细节说明一下,并把修改后的SQL分享出来;
问题1:调用脚本时,若SQL是用单引号包含(韩老师就是这么示范的:
Python mysql_tuning.py -p tuning_sql.ini -s 'select xxx),但这样会报错,解决办法:用双引号分隔,如:python mysql_tuning.py -p tuning_sql.ini -s "select * from employees.dept_emp"这样就没问题;
问题2:没有引用string单元,在使用string.atoi时会报错,解决办法:import string;
问题3:mysql5.7后,infomat
ion_schema的几个表INF
ORMATION_SCHEMA.GLOBAL_VARIABLES、INFORMATION_SCHEMA.SESSION_VARIABLES、 INFORMATION_SCHEMA.SESSION_STATUS要替换成performance_schema下的;
问题4:在显示执行计划时,table与type也是有可能是NULL的,要做空值处理,另外没有显示partitions栏位;
问题5:p_after_status[key]有可能是小数,所以用int去转换会报错,需要用float;
问题6:db_name显示成user_pwd了,这个或者不算问题;
修改后的脚本如下:
--结束END--
本文标题: mysql的性能优化工具(源自韩锋大师,针对5.7修改)
本文链接: https://lsjlt.com/news/47601.html(转载时请注明来源链接)
有问题或投稿请发送至:
邮箱/279061341@qq.com QQ/279061341
0