您的位置:首页 > 数据库 > MySQL

使用dstat命令的插件查看mysql的io状态

2015-04-03 12:50 555 查看
使用dstat竟然还可以查看mysql的状态, man dstat之后发现的,原来在/usr/share/dstat目录下藏有很多python脚本作为插件帮助dstat搜集各类信息。

不过通常有可能会

如果你执行dstat --mysql5_io 出现了

Module dstat_mysql5_io failed to load. (No module named MySQLdb)


那么你可能需要安装python-mysqldb来使用python driver连接mysql.

安装方法: sudo apt-get install python-mysqldb, 或者pip install

如果依然出现问题,那可以尝试使用自己编写的python脚本来查看失败的详细原因:

import MySQLdb
MySQLdb.connect(user=mysql_user, passwd=mysql_pwd)


比如我这里出现了:

_mysql_exceptions.OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'

这是由于我的mysql已经启动且安装 配置都是自定义的,因此需要查看下连接sock地址, 可以使用如下命令查看

lsof -p PIDofMySql

打开/usr/share/dstat目录下的dstat_mysql5_io.py

根据lsof结果修改以上代码为:

self.db = MySQLdb.connect(user=mysql_user, passwd=mysql_pwd,db="redmine", unix_socket="/opt/mysql/tmp/mysql.sock")


上述socket地址根据你自己的情况定义。

创建脚本,自动运行

#!/bin/bash

export DSTAT_MYSQL_USER='root'
export DSTAT_MYSQL_PWD='111111'

dstat --mysql5-io $@


运行结果为:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: