一:在储存采集信息的库上执行快速安装配置:
1,执行SQL脚本的内容:myawr.sql
二:在需要采集的数据库上首先检查是否安装 perl-DBD-MySQL
rpm -qa perl-DBD-MySQL*
没有安装的话直接 yum install perl-DBD-MySQL* 即可。
1。检查安装模块:
[root@oel58 aaa]# cat listmodle.pl
use strict;
use warnings;
use ExtUtils::Installed;
my $inst = ExtUtils::Installed->new();
print join "\n", $inst->modules();
[root@oel58 ~]# perl listmodle.pl
DBD::mysql
DBI
Perl
2.检查DBD的可用性:
CREATE TABLE test
(name
varchar(50) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO test (name) VALUES ('hello world');
[root@oel58 ~]# cat dbd.pl
use DBI;
my $dbh = DBI->connect( "DBI:mysql:database=test;host=localhost",
"root", "123456", { 'RaiseError' => 1 } );
my $query = $dbh->prepare("SELECT name FROM test");
$query->execute();
while ( $ary = $query->fetchrow_arrayref() ) {
print ( $ary->[0] . "\n");
}
3 初始化数据库(注意:这个是在你要保存信息的mysql数据库上部署)
增加配置信息:
INSERT INTO myawr_host
(id,host_name,ip_addr,port,db_role,version, running_thread_threshold,times_per_hour) VALUES (6, 'db2.11', '192.168.3.11', 3306, 'master', '5.6.10',10000,0);
perl /root/myawr/myawr.pl -u superuser -p 111111 -lh localhost -P 3306 -tu myuser -tp 111111 -TP 3306 -th 192.168.137.9 -n eth0 -d sda3 -I 6 >> /root/myawr/myawr_pl.log 2>&1
下面的脚本可以模拟有lock wait的情况:
use test;
create table txtest
(id int primary key ,
name varchar(200))
engine=innodb default charset = utf8 ;
insert into txtest values(1, 'xxxxxxxxxxxxxxxxxxxx');
insert into txtest values(2, 'zzzzzzzzzzzzzzzzzzzzzzz');
insert into txtest values(3, 'sssssssssssssssssssss');
commit;
start transaction;
update txtest set name='ddddddddd' where id =1 ;
update txtest set name='wwwwwwwwwwwddddddddd' where id =2 ;
start transaction;
update txtest set name='kkkkkkkkkkkkkkkkkk' where id =1 ;
select sleep(300);
在把下列脚本部署成job前,可以先手工运行一下:
./pt-query-digest --user=myuser --password=111111 --review h=192.168.137.9,D=myawr,t=myawr_query_review --review-history h=192.168.137.9,D=myawr,t=myawr_query_review_history --no-report --limit=100% --filter=" \$event->{add_column} = length(\$event->{arg}) and \$event->{hostid}=6" /var/lib/mysql/oel58-slow.log
开源地址:https://github.com/noodba/myawr
WorkLoad Report 样例:http://www.noodba.com/myawr.html
snapshot report 样例: http://www.noodba.com/myawr_snapshot.html
上边的网址这几天可能访问不了