技术开发 频道

利用龙芯迷你服务器对多个mysql 服务器进行实时备份

  4.php监视页面和cron定时监控

  4.1 php的web监视页面

  用php做监控很简单,只要注意每个mysql备份服务器的show slave status命令的结

  果,Slave_IO_Running,Slave_SQL_Running就行了

  mysql_connect("127.0.0.1:3307","root","******"); //连接到mysqld1

  $err=monitor(); //检查同步状态

  mysql_connect("127.0.0.1:3308","root","******"); //连接到mysql2

  $err.=monitor(); //检查同步状态

  mysql_connect("127.0.0.1:3309","root","******");

  $err.=monitor();

  if($err!='')

  echo $err;

  exit();

  function monitor()

  {

  $a=mysql_fetch_array(mysql_query("show slave status"));

  if($a['Slave_IO_Running']!='Yes')

  $msg="主服务器:$a[Master_Host]:$a[Master_Port] 不能通讯,日志抓取点:

  $a[Master_Log_File]:$a[Read_Master_Log_Pos]字节处

  ";

  if($a['Slave_SQL_Running']!='Yes')

  $msg.="主服务器:$a[Master_Host]:$a[Master_Port] 日志SQL语句不能被执行,错误信息:

       $a[Last_Error]

  ";

  return $msg;

  }

  ?>

  4.2 定时邮件报警

  做cron定时邮件监控很简单,只要把上面的监视页面的php的echo $err 改成

  sendmail("liushiwei@gmail.com","数据库备份错误",$err);

  就行了,然后在系统的cron设立一个每天早上7点16分执行一次的wget命令.如果出现同步问题,就会发送一封邮件

  /etc/crontab

  16 7 * * * root wget wget -O - -q http://127.0.0.1/mysql_monitor.php

  5.所有的文件都放在 ftp://www.anheng.com.cn/mysql ,此ftp不支持ie和迅雷,请使用其他浏览器下载:

  mysql_backup_loongson.tar.bz2 适用于龙芯mini服务器的系统映像,只需要修改一下

  /etc/mysql/my.cnf,然后配好网络就可以工作

  monitor.php 监视和cron的脚本

  sqlbak.sh 压缩加密的脚本

0
相关文章