可用于监控 mysql Master Slave 状态的python代码

yipeiwu_com7年前Python基础
复制代码 代码如下:

import os
import sys
import MySQLdb
def getStatus(conn):
    query = " SHOW SLAVE STATUS "

    # print query
    cursor = conn.cursor()
    cursor.execute(query)
    result = cursor.fetchall()
    return result[0]
def resolve(conn):
    cursor = conn.cursor()
    query1 = "set global sql_slave_skip_counter=1"
    query2 = "START SLAVE"
    query3 = "SHOW SLAVE STATUS"

    cursor.execute(query1)
    cursor.execute(query2)
    cursor.execute(query3)
    conn.commit()

if __name__ == '__main__':
    conn = MySQLdb.connect(read_default_file="~/.my.cnf", db="", port=3306, charset="utf8")
    status = getStatus(conn)
    print "Master_Log_File: %s" % status[5]
    print "Read_Master_Log_Pos: %s" % status[6]
    print "Seconds_Behind_Master: %s" % status[-1]
    if status[32] is None:
        resolve(conn)
    else:
        print 'resolved'

相关文章

python按时间排序目录下的文件实现方法

废话不多说,直接上代码: python文件夹遍历,文件操作,获取文件修改创建时间可以去网上参考其他文章。 如: os.path.getmtime() 函数是获取文件最后修改时间 o...

python如何拆分含有多种分隔符的字符串

案例:        把某个字符串依据分隔符拆分,该字符包含不同的多种分隔符,如下    &nb...

详解Pytorch 使用Pytorch拟合多项式(多项式回归)

详解Pytorch 使用Pytorch拟合多项式(多项式回归)

使用Pytorch来编写神经网络具有很多优势,比起Tensorflow,我认为Pytorch更加简单,结构更加清晰。 希望通过实战几个Pytorch的例子,让大家熟悉Pytorch的使用...

Python 点击指定位置验证码破解的实现代码

思路: 创建浏览器驱动对象 加载登录页面 等待页面加载完毕 切换到用户名和密码登录模式 输入手机号, 注意此处需要等待并获取输入框 输入密码 点击验证按钮 获取弹出验证图...

Python的Twisted框架中使用Deferred对象来管理回调函数

Python的Twisted框架中使用Deferred对象来管理回调函数

首先抛出我们在讨论使用回调编程时的一些观点: 激活errback是非常重要的。由于errback的功能与except块相同,因此用户需要确保它们的存在。他们并不是可选项,而是必选项...