python写mysql脚本_使用python写一个监控mysql的脚本,在zabbix web上加上模板
使用python写一个监控mysql的脚本,在zabbix web上加上模板:
##先使用MySQLdb的接口关联数据库。
[root@cml python]# cat check_Mysql_custom.py
#!/usr/local/bin/python
'''author = chenmingle'''
'''Description:get mysql status'''
import os
import sys
try:
import MySQLdb as mysql
except Exception, e:
print e
print "pip install MySQL-python"
sys.exit(1)
con = mysql.connect(host='localhost',user='root',passwd='passwd',)
def processlist():
cur = con.cursor()
sql1 = 'show processlist'
a = str(cur.execute(sql1))
print a
def slave_status():
cur = con.cursor()
sql2 = cur.execute('show status like "%Slave_running%";')
status2 = str(cur.fetchall())
check2 = status2.split("'")[3]
if check2 == 'ON':
print 0
else:
print 1
def show_status(type):
cur = con.cursor()
b = cur.execute('show status like "%s";' %(type))
for i in cur.fetchall():
cat = str(i)
check = str(cat.split("'")[3])
print check
def main(type):
if type == 'processlist':
processlist()
elif type == 'slave_status':
slave_status()
else:
show_status(type)
if __name__ == '__main__':
try:
type = sys.argv[1]
except Exception, e:
print "Usage: python %s type" % sys.argv[0]
sys.exit(1)
main(type)
假如执行测试时报以下错误:
[root@cml python]# python check_Mysql_custom.py slave_status
Traceback (most recent call last):
File "test.py", line 14, in
con = mysql.connect(user='zabbix',passwd='',port=3306)
File "/usr/local/lib/python2.7/site-packages/MySQLdb/__init__.py", line 81, in Connect
return Connection(*args, **kwargs)
File "/usr/local/lib/python2.7/site-packages/MySQLdb/connections.py", line 193, in __init__
super(Connection, self).__init__(*args, **kwargs2)
_mysql_exceptions.OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)")
执行以下命令可以解决:
[root@cml python]# mkdir /var/lib/mysql
[root@cml python]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
##测试一下脚本:
[root@cml python]# python check_Mysql_custom.py processlist
3
[root@cml python]# python check_Mysql_custom.py Connections
55876
##测试显示所有在mysql中show status的都可以输出信息出来:
##写一个模板配置文件(自定义key值):
[root@cml zabbix_agentd.d]# cat Mysql_Custom.conf
UserParameter=mysql.Custom[*],/usr/local/bin/python /home/python/check_Mysql_custom.py $1
##在zabbix web界面上加入模板:
##增加一个Appaliactions:
##加入item值:
python写mysql脚本_使用python写一个监控mysql的脚本,在zabbix web上加上模板相关推荐
- python selenium脚本_怎样开始写第一个基于python的selenium脚本
1.下载并安装python(http://www.python.org/geti/). 2.安装selenium(http://pypi.python.org/pypi/selenium)下载并解压缩 ...
- python写魔兽世界脚本_用python bat写软件安装脚本 + HM NIS Edit自动生成软件安装脚本...
2019-03-11更新:原来NSIS脚本也可以禁用64位文件操作重定向的! 1.在安装脚本的开始处定义 LIBRARY_X64. !include "MUI.nsh" !incl ...
- java调用python脚本_调用Python写vb的脚本方法
某个项目中涉及到这样一个情景: VB写的原始项目要调用Python的一些方法完成特殊的操作, 那么这就涉及到了,在.Net Framework中如何调用Python的脚本方法. 具体步骤流程如下所示: ...
- python网络游戏脚本_用Python写一个游戏脚本,你会吗?
学习python有一段时间了,由于python语言的强大和简洁,是一个不错的脚本语言,就准备做个游戏脚本练练手.如果你也想多练项目实战.可以去小编的Python交流.裙 :一久武其而而流一思(数字的谐 ...
- python写一个网络测速脚本_利用Python实现网络测试的脚本分享
前言 最近同学让我帮忙写一个测试网络的工具.由于工作上的事情,断断续续地拖了很久才给出一个相对完整的版本.其实,我Python用的比较少,所以基本都是边查资料边写程序. 程序的主要逻辑如下: 读取一个 ...
- python测试抽奖脚本_使用 Python 写一个简易的抽奖程序
不知道有多少人是被这个头图骗进来的:) 事情的起因是这样的,上周有同学问小编,看着小编的示例代码敲代码,感觉自己也会写了,如果不看的话,七七八八可能也写的出来,但是一旦自己独立写一段程序,感觉到无从下 ...
- 用python写shell脚本_应用python编写shell脚本
今天同事叫我编写一个shell脚本.话说,虽然我受*nix的影响甚深,但是对于*nix里随处可见的sh脚本却是讨厌之极.为什么讨厌呢?首先是因为sh脚本那莫名其妙的语法,感觉就像随写随扔的程序,完全没 ...
- python写自动答题脚本_编写Python脚本拉取优学院答案
上个月审计了云班课和优学院的前端代码,实现了强制修改视频进度和获取选择题答案的功能.但是单个发包效率太低了,昨晚开始着手写了一个脚本,早上修改了一下,基本功能写出来了.考虑到风险,这个脚本是获取答案, ...
- python写机器人程序_用Python写的一个多线程机器人聊天程序
本人是从事php开发的, 近来想通过php实现即时通讯(兼容windows).后来发现实现起来特别麻烦, 就想到python.听说这家伙在什么地方都能发挥作用.所以想用python来做通讯模块...所 ...
最新文章
- 【Linux 操作系统】阿里云服务器 操作实战 部署C语言开发环境(vim配置,gcc) 部署J2EE网站(jdk,tomcat)
- oc 计算 带括号 式子
- canvas 将图形设置为button_将Excel设置为存放文件的文件夹:自动提醒直观摘要免压缩发微信...
- mvn项目Quartz简单上手
- java批量转换图片格式
- 比特平面分层_平面设计中的分层
- python 将二维数组旋转_python 二维数组90°旋转
- 访问地图http://clustrmaps.com/zh/admin/action.php
- 计算机四年级测试题目,小学四年级下册数学总复习测试题(人教版)
- datastage连接mysql库_Datastage 8.5 连接远程Oracle 数据库
- udp测试工具linux系统,网络测试工具下载_Packet Sender(UDP/TCP网络测试工具)
- Android Wi-Fi subsystem_ramdump简介(以QCOM为Base)
- java multi tenancy_java工程積累——saas之multi-tenancy解析
- html网站运行天数代码,网站运行天数代码
- Python语法之精妙的十个知识点(装B语法)
- AMBA总线协议之AHB学习记录(1)—ahb_bus(附verilog代码)
- 雨天在火车站台上撑伞会触电吗?
- 车辆融资租赁合同(主要条款)
- C-PHY技术是什么
- 实例讲解将Graph Explorer搬上JupyterLab
热门文章
- 理解SQL SERVER中非聚集索引的覆盖,连接,交叉和过滤
- Oracle触发器的语法详解
- 谷歌、雅虎支持中文域名搜索 有助提升SEO
- python语言中with as的用法使用详解
- Homestead 使用总结
- php如何在mysql数据库里创建表_php创建mysql数据库以及数据表
- 讲真,MySQL索引优化看这篇文章就够了
- python最短回文串_LeetCode-Python-214. 最短回文串
- 安卓imageView加载MYSQL图片_Android调用相机拍摄照片并显示到 ImageView控件中
- excel表中怎么插入visio_用Excel编制精确甘特图,准确控制任务进展,提高项目管理水平...