我们公司所有mysql server版本为5.0.25,操作系统是centos 4.6,所有mysql server都是下载tar包重新编译。以下是我具体操作过程。 前提条件: 1.在每台mysql服务器上为中心管理服务器新建一个用户。以便它有权查看服务器的运行状况。 mysql>grant all ON *.* TO status@中心管理服务器ip IDENTIFIED BY '用户密码‘; 2.下载mysqlreport脚本 wget 解压,然后将mysqlreport复制到/usr/bin/目录下,以便于后期调用。 3.编写脚本,以下是我脚本内容。
#!/bin/sh DATE=`date '+%Y%m%d%H%M'`//定义时间 ADMIN="zhang×××@gmail.com"// STATUS_LOGS="/var/log/mysql_status.log" PASSWORD="刚才新建的数据库密码" PORT="3306"//数据库端口 IP="192.168.10.26 192.168.10.214 192.168.10.20 192.168.10.100 \192.168.10.105"//mysql server ip地址,请根据你的网络环境更改 if [ ! -f $STATUS_LOGS ];then /bin/touch $STATUS_LOGS fi//建立日志文件 for i in $IP do HOSTNAME=$i /bin/echo "================ mysql status analize for 192.168.10.214 date:$DATE====================">>$STATUS_LOGS /bin/echo "========================== Status For $HOSTNAME ==================================">>$STATUS_LOGS /usr/sbin/mysqlreport --user status --password $PASSWORD --host $IP >>$STATUS_LOGS sleep 1 echo " ">>$STATUS_LOGS done //循环导出mysql服务器运行状况资料