wcdz 发表于 2018-8-15 08:38:33

用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的主从复制