无锡天气,dba+开源东西:图形化显现MySQL慢日志,被

东西研制者介绍贺春旸,凡普金科DBA团队担任人,《MySQL办理之道:功用调优、高可用与监控》榜首、二版作者,曾任职于中国移动飞信、安卓机锋网。致力于MariaDB、MongoDB等开源技能的研讨,首要担任数据库功用调优、监控和架构规划。

东西下载:点击文末【阅览原文】或登录云盘

https://pan.baidu.com/s/1a06GbTc7be5jNtUl84UlOw(提取码: 6q8x)

Slowquery东西建立布景

因为天兔Lepus慢查询东西是运行在PHP CI结构里,而不是作为一个独立的web页面接口,所以想直接接入主动化运维渠道里,移植代码比较困难,固考虑重构。

参阅了开源东西Anemometer图形展现思路,而且把小米Soar东西集成进去,开发在页面上点击慢SQL,就会主动反应优化主张,然后下降DBA人肉本钱,一起也支撑主动发送邮件报警功用。

agent客户端慢日志收集剖析是结合Percona pt-query-digest东西来完成。

东西地址:

https://github.com/hcymysql/slowquery

欧元对人民币

装置过程

需求装置的过程如下:

1、percona-toolkit东西的装置

2、php web mysql环境的建立

# yum install httpd mysql php php-mysql -y

3、装置Slowquery并装备

4、导入慢查询日志

5、拜访界面,检查慢查询

6、装备邮件报警

东西建立装备吴山居事情账

1、移动到web目录

# mv slowquery /var/www/html/

2、进入sl16岁少年owquery/slowque卡丁车ry_table_schema目录下,导入dbinfo_table_schema.sql和slowquery_tabl你还要我怎样e_schema.sql表结构文件到喋血三雄你的运维办理机MySQL里。

注:dbinfo表是保存出产MySQL主库的装备信息。

例:

# mysql -uroot -p123456 sql_db < ./dbinfo_table_schema.sql

# mysql -uroot -p123456 sql_db < ./slowquery_table_schema.sql

录入你要监控的MySQL主库装备信息。

例:

mysql> INSERT INTO sql_db.dbinfo VALUES

(1,'192.168.148.101','test','admin','123456',3306);

3、修正装备文件config.php,将里边的装备改成你的运维办理机MySQL的地址(用户权限最好是办理员)。

例:

$con = mysqli_connect("192.168.148.9","admin","123456","sql_db","3306")西高所 无锡气候,dba+开源东西:图形化闪现MySQL慢日志,被or die("数据库链接

过错".mysqli_connect_error());

4、修正装备文件soar_con.php,将里边的装备改成你的运维办理机MySQL的地址(用户权限最好是办理员)。

例:

//-test-dsn soar测验环境,用来剖析SQL运用李仰珍

$test_user='admin';

$test_pwd='123456';

$test_ip='192.168.148.9';

$test_port='3306';

$test_db='test';

5、进入到slowquery/cliconfidentent_agent_目录下,把slowquery_analysis.sh脚本拷贝到出产MySQL主库上做慢日志剖析推送,依照下面的比如做修正:

#!/bin/bash

#改成你的运维办理机MySQL地址(用户权限最好是办理员)

slowquery_db_host="192.168.148.9"

slowquery_db_port="3306"

slowquery_db_user="admin"

slowquery_db_password="123456"

slowquery_db_database="sql_db"

#改成你的出产MySQL主库地址(用户权限最好是办理员)

mysql_client="/usr/local/mysql/bin/mysql"

mysql_host="192.168.148.1"

mysql_port="3306"

mysql_user="admin"

mysql_password="摄组词123456"

#改成你的出产MySQL主库慢查询目录和慢查询执行时间(单位秒)

slowquery_dir="/data超级警卫/mysql/yourDB/slowlog/"

slowquery_long_time=2

slowquery_file=`$mysql_client -h$mysql_host -P$mysql_port -u$mysql_user -p$mysql_password -e "show

variables like 'slow_query_log_file'"|grep log|aw无锡气候,dba+开源东西:图形化闪现MySQL慢日志,被k卉怎样读 '{print $2}'`

pt_query_digest="/天边八卦usr/local/bin/pt-query-digest"

#改成你的出产MySQL主库server_id

mysql_server_id=270

#无锡气候,dba+开源东西:图形化闪现MySQL慢日志,被collect mys水蔗草ql slowquery log into slowquery database

$pt_query_digest --user=$slowquery_db_user --password=$slowquery_db_password --port=$slowquery_db_port

--review h=$slowquery_db_host,D=$slowquery_db_database,t=mysql_slow_query_review --history

h=$slowquery_db_host,D=$slowquery_db_database,t=mysql_slow_query_review无锡气候,dba+开源东西:图形化闪现MySQL慢日志,被_history --no-report

--limit=100% --filter=" \$event->{add_column武昌鱼} = length(\$event->{arg}) and

\$event->{serverid}=$mysql_server_id " $slowquery_file > /tmp/slowquery_analysis.log

##### set a new slow query log ###########

tm无锡气候,dba+开源东西:图形化闪现MySQL慢日志,被p_log=`$mysql_client -h$mysql_host -P$mysql_port -u$mysql_user -p$mysql_password -e "select

concat('$slowquery_dir','slowqu乡野春ery_',date_format(now(),'%Y%m%d%H'),'.log');"|grep log|sed -n -e '2p'`

#config mysql slowquery

$mysql_client -h$mysql_host -P$mysql_port -u$mysql_user -p$mysql_password -e "set global

slow_query_log=1;set global long_query_time=$slowquery_long_time;"

$mysql_client -h$mysql_host -P$mysql_port -u$mysql_user -p$mysql_password -e "set global

slow_query_log_file = '$tmp_log'; "

#delete log before 7 days

cd $slowquery_dir

/usr/bin/find ./ -name 'slowquery_*' -mtime +7|xargs rm -f ;

#电动扫地车###END####

守时使命(10分钟一次)。

*/10 * * * * /bin/bash /usr/local/bin/slowquery_analysis.sh > /dev/null 2>&1

6、其他就没啥装备的了,直接翻开浏览器拜访slowquery.php就OK了。

查找某一个库的详细信息:

点击+号,点下面的SQL,会调用Soar反应优化主张:

Soar有的SQL我发现不能闪现Explain,所以我用PHP多闪现了一次:

7、慢查询邮件推送报警装备。进入到slowquery/alarm_mail/目录里,修正sendmail.php装备信息。

例:

$smtpserver = "smtp.126.com";//SMTP效劳器

$smtpserverport = 25;无锡气候,dba+开源东西:图形化闪现MySQL慢日志,被//SMTP效劳器端口

$smtpusermail = "chu东汉nyang_he@126.com";//SMTP效劳器的用户邮箱

$smtpemailto = 'chunyang_he@126.com';//发送给谁

$smtpuser = "chunyang_he@126.com";//SMTP效劳器的用新能源轿车价格表户帐号,注:部分邮箱只需@前面的用户名

$smtppass = "123456";//SMTP效劳器的授权码

守时使命(每隔3小时慢查询报警推送一次)。

0 */3 * * * cd /var/www/html/slowquery/alarm_mail;

/usr/bin/php /var/www/html/slo无锡气候,dba+开源东西:图形化闪现MySQL慢日志,被wquery/alarm_mail/sendmail.php > /dev/null 2>&1

在线演示:

http://fander.jios.org:8008/slowquery/slowquery.php

下载方式

登录云盘链接:

https://pan.baidu.com/s/1a06GbTc7be5jNtUl84UlOw

输入提取码: 6q8x 即可下载东西脚本

现经过dbaplus社群免费为咱们供给Slowquery的下载运用。若运用过程中有任何问题或主张,可随时与咱们联络,欢迎咱们试用!

更多免费东西&脚本

概况及下载:http://dbaplus.cn/list-142-1.html

规划 云盘 开发
声明:该文观念仅代表作者自己,搜狐号系信息发布渠道,搜狐仅供给信息存储空间效劳。