centos7 安装mysql_基于centos7系统安装部署mysql-awr开源监控工具--第一部分

概述

今天主要分享一款开源的mysql工具--myawr。myawr以mysql instance 为单位,每隔一段时间进行采样,然后把数据保存到数据库,以便分析。目前myawr脚本收集的信息包括5个部分:

1)系统方面的:负载、cpu、io、网络、swap、磁盘空间

2)Mysql状态方面的:

具体到一些QPS、TPS、key Buffer 命中率、InnoDB Buffer命中率、Query Cache命中率、Table Cache状态量、Tmp Table状况、innodb status、Threads_connected、Opened_tables、Select_full_join、Innodb_log_waits量等等。

3)Mysql slow query方面的信息,可通过mysql instance id进行关联:

4)如果Mysql开启了performance schema:

收集events_waits_summary_global_by_event_name、file_summary_by_event_name等

5)Mysql peak 信息的收集,包括active session 信息,包括sql,当时的lock信息,当时的innodb status。

因为网上的都写的很简单,很多细节都没写到,所以整理了一下怎么去搭建,大概分成两部分。


一、部署前准备

1、开源地址

见:https://github.com/noodba/myawr

myawr is a tool for collecting and analyzing performance data for MySQL database (including os info ,mysql status info and Slow Query Log all of details). The idea comes from Oracle awr. Myawr periodic collect data and save to the database as snapshots.Myawr was designed as CS architecture.Myawr depends on (but not necessary) performance schema of MySQL database.Myawr consists of three parts:myawr.pl--------a perl script for collecting mysql performance datamyawrrpt.pl-----a perl script for analyzing mysql performance datamyawrsrpt.pl-----a perl script for analyzing mysql peak time data

2、环境规划

0c73c3aca744cdedb889667fe97dbd3c.png

3、安装包准备

这里主要准备myawr的相关脚本、percona-toolkit还有perl-DBD-mysql安装包。

也可以私信我关键字:myawr,我这边再发给你。


二、监控端部署

1、安装mysql数据库

1.1、创建基础目录并修改文件夹的属组

mkdir -p /data/datafilemkdir –p /data/logchown -R mysql:mysql /data
72de7db43a3ece040f56c2c2c51bbd5b.png

1.2、卸载自带包

sudo yum remove -y mariadb*
ae8170384a072116704ab8c205639ca3.png

1.3、安装rpm

rpm -ivh mysql-community-common-5.7.24-1.el7.x86_64.rpmrpm -ivh mysql-community-libs-5.7.24-1.el7.x86_64.rpmrpm -ivh mysql-community-client-5.7.24-1.el7.x86_64.rpmrpm -ivh mysql-community-server-5.7.24-1.el7.x86_64.rpm
1fce77e47a32b276f9460911abb727b0.png

1.4、修改数据库my.cnf参数

# vi /etc/my.cnf

[mysqld]datadir=/data/datafilesocket=/var/lib/mysql/mysql.socksymbolic-links=0log-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pidlower_case_table_names=1character_set_server=utf8max_connections=2000log-bin = /data/log/mysql-bin.logserver-id = 1log-bin-index =/data/log/binlog.indexlog_bin_trust_function_creators=1sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO

1.5、启动服务

service mysqld restart
a433fc2651184bb25d1e3980cd8d9458.png

1.6、修改数据库密码

--查看数据库默认密码# cat /var/log/mysqld.log|grep password--更改密码# mysql -u root -pmysql> set global validate_password_policy=0;mysql> SET PASSWORD = PASSWORD('fswl@1234');
b5d247c844a8795e707116212dca1e6d.png

2、初始化数据

执行修改后的数据初始化脚本:myawr.sql

40c7709b87221466e7b9d880edf7c6ae.png

3、安装perl

# rpm -qa |grep perl-DBD*--如果没安装# rpm -ivh mysql-community-libs-compat-5.7.26-1.el7.x86_64.rpm # rpm -ivh perl-DBD-MySQL-4.023-5.el7.x86_64.rpm --或者yum install -y perl-DBD-MySQL.x86_64
e38bf3e27265a6e24b95760b257ffa96.png

4、添加被监控主机

INSERT INTO `myawr_host` ( id, host_name, ip_addr, PORT, db_role, version, uptime, running_thread_threshold, times_per_hour )VALUES ( 11, 'ZL-FSL-PAS-TEST-DB', '172.26.151.70', 3306, 'master', '5.7', 1, 10000, 0 );
deb4b0b182b0363ece94967e9b12e89b.png

5、授权

grant all on myawr.* to 'myawr'@'localhost' identified by "xx";grant all on myawr.* to 'myawr'@'%' identified by "xx";
bb78e9226c74a9fbb1aaeb9918646718.png

到这里监控端的部分就配置好了,后面介绍一下被监控端的配置和测试脚本,感兴趣的朋友可以关注下~

16fabc58970200662839ec7be71c270b.gif
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值