表示 进入内容 12
Displaying posts with tag: Anemometer (reset)
如何自动化完成SQL审核

sql审核主要完成两方面的目的.
1、避免性能太差的sql进入生产系统,导致整体性能降低
2、检查开发设计的索引是否合理,是否需要添加索引

第一点是SQL审核最核心的地方,避免乱七八糟的sql影响线上性能,甚至导致线上系统崩溃.
第二点是属于建模的范畴,要解决建模的最好办法是DBA参与项目前期审核,由DBA建模,如果DBA人力资源不足,那么就定期由DBA对开发人员进行培训.然后发现建模太烂的就扣KPI.

现在很多公司都是人肉来完成SQL审核的,人肉审核对dba的要求较高,需要懂一些代码,另外是费时费力,毕竟一般公司几十个开发,对应一个DBA,而且DBA还要干很多其他的事情.
如何将DBA从人肉SQL审核中解放出来呢?

思路其实很简单:
1、获取程序要执行的SQL

[获取更多]
安装MySQL慢查询日志工具Anemometer

首先安装LNMP环境,要求PHP-5.3以上版本.
参考:http://isadba.com/?p=82 或者参考 http://isadba.com/?p=572

然后下载Anemometer
git clone https://github.com/box/Anemometer.git anemometer

配置LNMP将下载下来的anemometer部署到LAMP上面,可以通过web打开页面,会提示你没有配置网站.
mysql -uroot -p < mysql56-install.sql #导入需要的表结构
mysql -uroot -p < install.sql #这个表结构一定要自己导进去,不然会缺少两个字段,导致不能区分主机和db.

安装percona的toolkit工具
yum install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm
yum install percona-toolkit -y

修改配置文件
cd /var/www/anemometer/conf/
cp sample.config.inc.php config.inc.php

[获取更多]
表示 进入内容 12