yrtew 发表于 2017-3-20 10:52:46

用python监控mysql的主从复制

利用python来检查MySQL的主从复制,
有一个注意点是,cur.execute("show slave status;") 不能用cur.execute("show slave status\G;")
result = cur.fetchall()       
返回的是个二元数组
result 返回时整个show slave status 状态信息。
result 返回具体的某一项。

python代码如下:
#!/usr/bin/env python
#-*- coding: utf-8 -*-
import MySQLdb, socket, paramiko,sys, os,datetime
def final_check_mysql ():
        status = True
       try:
                conn=MySQLdb.connect(host='192.168.3.10',user='root',passwd='Xp29at5F37',db='test')
                cur=conn.cursor()
                cur.execute("show slave status;")
                result = cur.fetchall()       
                io_thread= result
                sql_thread= result
                print io_thread,sql_thread
                cur.close()
                conn.close()
      except Exception,e:
                print Exception,":",e
                status = True
        try:
       if io_thread == "Yes" and sql_thread == "Yes":
               print 'MySQL master/slave replication status is successfully'
         else:
               print 'MySQL Master/Slave replication fail,Please check it'
               status = False
        except Exception,e:
               print Exception,":",e
       #return status
go=final_check_mysql()

页: [1]
查看完整版本: 用python监控mysql的主从复制