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


Posted in Python onFebruary 10, 2013
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时间整形转标准格式的示例分享
Feb 14 Python
Python判断变量是否已经定义的方法
Aug 18 Python
python各种语言间时间的转化实现代码
Mar 23 Python
Python+Socket实现基于UDP协议的局域网广播功能示例
Aug 31 Python
Python之reload流程实例代码解析
Jan 29 Python
运用TensorFlow进行简单实现线性回归、梯度下降示例
Mar 05 Python
python版本的仿windows计划任务工具
Apr 30 Python
PyQt Qt Designer工具的布局管理详解
Aug 07 Python
Jupyter Notebook打开任意文件夹操作
Apr 14 Python
Python try except finally资源回收的实现
Jan 25 Python
Django中如何用xlwt生成表格的方法步骤
Jan 31 Python
Python采集爬取京东商品信息和评论并存入MySQL
Apr 12 Python
python 从远程服务器下载东西的代码
Feb 10 #Python
Python内置的字符串处理函数整理
Jan 29 #Python
python每次处理固定个数的字符的方法总结
Jan 29 #Python
python设置windows桌面壁纸的实现代码
Jan 28 #Python
python连接sql server乱码的解决方法
Jan 28 #Python
python定时检查启动某个exe程序适合检测exe是否挂了
Jan 21 #Python
Python实现的金山快盘的签到程序
Jan 17 #Python
You might like
php变量与JS变量实现不通过跳转直接交互的方法
2017/08/25 PHP
laravel ORM 只开启created_at的几种方法总结
2018/01/29 PHP
Laravel框架实现定时Task Scheduling例子
2019/10/22 PHP
javascript设计模式 封装和信息隐藏(上)
2012/07/24 Javascript
JS不能跨域借助jquery获取IP地址的方法
2014/08/20 Javascript
JavaScript使用slice函数获取数组部分元素的方法
2015/04/06 Javascript
jQuery插件jcrop+Fileapi完美实现图片上传+裁剪+预览的代码分享
2015/04/22 Javascript
浅谈javascript中for in 和 for each in的区别
2015/04/23 Javascript
浅析js中substring和substr的方法
2015/11/09 Javascript
html5+javascript实现简单上传的注意细节
2016/04/18 Javascript
修改js confirm alert 提示框文字的简单实例
2016/06/10 Javascript
js实现非常棒的弹出div
2016/10/06 Javascript
微信小程序 require机制详解及实例代码
2016/12/14 Javascript
jQuery验证表单格式的使用方法
2017/01/10 Javascript
Node.js websocket使用socket.io库实现实时聊天室
2017/02/20 Javascript
js实现从左向右滑动式轮播图效果
2017/07/07 Javascript
js实现图片轮播效果学习笔记
2017/07/26 Javascript
Vue中axios的封装(报错、鉴权、跳转、拦截、提示)
2019/08/20 Javascript
javascript简单实现深浅拷贝过程详解
2019/10/08 Javascript
Vue $attrs & inheritAttr实现button禁用效果案例
2020/12/07 Vue.js
[01:20]DOTA2更新全新英雄 天涯墨客现已加入游戏
2018/08/25 DOTA
Python中使用Boolean操作符做真值测试实例
2015/01/30 Python
python difflib模块示例讲解
2017/09/13 Python
python代码实现TSNE降维数据可视化教程
2020/02/28 Python
Django 项目布局方法(值得推荐)
2020/03/22 Python
Django中的AutoField字段使用
2020/05/18 Python
python文件排序的方法总结
2020/09/13 Python
详解python百行有效代码实现汉诺塔小游戏(简约版)
2020/10/30 Python
举例详解HTML5中使用JSON格式提交表单
2015/06/16 HTML / CSS
英国简约舒适女装品牌:Great Plains
2018/07/27 全球购物
JDBC操作数据库的基本流程是什么
2014/10/28 面试题
罚款通知怎么写
2015/04/22 职场文书
父亲节感言
2015/08/03 职场文书
mysql配置SSL证书登录的实现
2021/09/04 MySQL
默认网关不可用修复后过一会又不好使了解决方法
2022/04/08 数码科技
vue递归实现树形组件
2022/07/15 Vue.js