可用于监控 mysql Master Slave 状态的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'

(0)

相关推荐

  • shell监控脚本实例—监控mysql主从复制

    本节内容:监控mysql主从复制的shell脚本. 说明:监控脚本在 rhel5 下测试正常,其它版本的linux 系统请自行测试,需要的一些准备工作可以查看这篇文章 代码: 复制代码 代码如下: #监控mysql 主从复制cat chk_mysql_rep.sh #!/bin/bash # #script_name:chk_mysql_rep.sh #check mysql replication # #ssh root@xen "/usr/local/mysql/bin/mysql -uro

  • mysql常用监控脚本命令整理

    #/bin/sh #检测mysql server是否正常提供服务 mysqladmin -u sky -ppwd -h localhost ping #获取mysql当前的几个状态值 mysqladmin -u sky -ppwd -h localhost status #获取数据库当前的连接信息 mysqladmin -u sky -ppwd -h localhost processlist #获取当前数据库的连接数 mysql -u root -p123456 -BNe "select ho

  • shell脚本监控mysql主从状态

    此脚本首先判断mysql服务器是否运行,如果正常,继续判断主从,否则发邮件告警,只发一次.判断主从状态是判断IO和SQL线程是否都为yes,如果不是则发邮件通知,只发一次. 复制代码 代码如下: #!/bin/bash#define mysql variablemysql_user="root"mysql_pass="123456"email_addr="slave@jb51.net" mysql_status=`netstat -nl | aw

  • 安装配置Zabbix来监控MySQL的基本教程

    Zabbix的简单安装配置说明 1.在已有的LAMP或者LNMP的基础上安装zabbix,安装一些依赖包: yum -y install mysql-devel libcurl-devel net-snmp-devel 2.添加用户: groupadd zabbix useradd zabbix -g zabbix 3.创建数据库,添加授权账号 create database zabbix character set utf8; grant all privileges on zabbix.*

  • MySQL数据库维护中监控所用到的常用命令

    status = show status like '%%' [例:show status like 'Com_select']variables = show variables like '%%' [例:show variables like 'query_cache_size'] 1.MySQL查询次数(status)Com_select;Com_update;Com_insert;Com_delete;Com_change_db 2.查询缓存空间大小:query_cache_size(v

  • MySQL实时监控工具orztop的使用介绍

    前言 orztop是一款实时show full processlist的工具,我们可以实时看到数据库有哪些线程,执行哪些语句等.工具使用方便简单.解决了我们需要手动刷新show full processlist的痛苦. 该工具为朱旭开发的一款可以查看mysql数据库实时运行的sql状况的工具,以前苦于通过show processlist/show full processlist抓取sql的同志们现在只要盯一盯屏幕就可以了,使用方法也很简单,如下: orztop结果图 此处我正在对我的mysql

  • 根据mysql慢日志监控SQL语句执行效率

    根据mysql慢日志监控SQL语句执行效率 启用MySQL的log-slow-queries(慢查询记录). 在Linux环境下先要找到my.cnf文件(一般在/etc/mysql/),然后可能会发现该文件修改后无法保存,原因是你没有相应的权限,可以从属性中看到该文件的所有者是root,这时要先以root的身份打开它: sudo nautilus /etc/mysql 接着再打开my.cnf文件然后找到[mysqld]标签在下面加上: log-slow-queries=/path/slow.lo

  • Shell脚本实现监控MySQL主从同步

    代码如下: 复制代码 代码如下: #!/bin/bash #check MySQL_Slave Status #crontab time 00:10 MYSQLPORT=`netstat -na|grep "LISTEN"|grep "3306"|awk -F[:" "]+ '{print $4}'` MYSQLIP=`ifconfig eth0|grep "inet addr" | awk -F[:" "

  • mysql性能监控工具Innotop简介及配置

    1.innotop安装 参考官网:http://innotop.googlecode.com/svn/html/installing.html # wget http://innotop.googlecode.com/files/innotop-1.9.0.tar.gz # tar -zxvf innotop-1.9.0.tar.gz # cd innotop-1.9.0 安装INNOTOP工具非常简单,其是由PERL写的,当然需要PERL环境和相关的工具包.在安装之前先要确定你的系统安装了Ti

  • mytop 使用介绍 mysql实时监控工具

    mytop类似于linux top工具,可以实时监控mysql服务器的性能信息. 安装方法 1.安装依赖 复制代码 代码如下: # cpan # cpan > install DBI # cpan > install Term::ReadKey # cpan > install DBD::mysql # cpan > exit 2.下载安装mytop 复制代码 代码如下: cd /tmp wget http://jeremy.zawodny.com/mysql/mytop/myto

随机推荐