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

时间:2023-01-05 07:39:30 


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'
标签:mysql,Master,Slave
0
投稿

猜你喜欢

  • Python和C语言利用栈分别实现进制转换

    2022-10-02 15:43:15
  • 详解Python的lambda函数用法

    2023-09-22 11:33:19
  • vue中控制mock在开发环境使用,在生产环境禁用方式

    2024-05-21 10:15:06
  • 解读sql中timestamp和datetime之间的转换

    2024-01-26 18:59:14
  • Python中Continue语句的用法的举例详解

    2023-04-04 13:12:37
  • python 网络编程详解及简单实例

    2021-09-02 06:40:56
  • sqlserver 聚集索引和非聚集索引实例

    2024-01-18 21:29:12
  • Python itertools.product方法代码实例

    2023-01-19 03:18:31
  • sql语句中单引号嵌套问题(一定要避免直接嵌套)

    2024-01-16 14:48:52
  • Python编程基础之类和对象

    2023-08-04 11:52:33
  • 在python中计算ssim的方法(与Matlab结果一致)

    2023-08-19 03:33:21
  • PHP APC缓存配置、使用详解

    2023-11-21 22:15:15
  • darknet框架中YOLOv3对数据集进行训练和预测详解

    2023-11-21 23:11:15
  • Python Sqlalchemy如何实现select for update

    2022-01-23 02:26:31
  • python图形界面tkinter的使用技巧

    2022-04-24 01:34:22
  • Python错误的处理方法

    2021-08-01 05:38:15
  • JavaScript中的onerror事件概述及使用

    2024-05-03 15:06:39
  • Tensorflow加载Vgg预训练模型操作

    2023-10-13 10:56:23
  • MySql字符串拆分实现split功能(字段分割转列)

    2024-01-15 03:12:03
  • python实现进度条的多种实现

    2021-03-20 10:39:52
  • asp之家 网络编程 m.aspxhome.com