MySQL对所有表收集统计信息(Python 2脚本)
-
feelpurple
2018-04-11 17:31:27
-
MySQL
-
原创
-
[root@MySQL01 script]# vim analyze.py
-
#!/usr/bin/env python
-
# -*-encoding:utf8-*-
-
#
-
-
import MySQLdb
-
import time
-
step = 0
-
db = MySQLdb.connect(host = '192.168.56.101',port = 3306,user = 'neo', passwd = 'neo' , db = 'information_schema')
-
conn = db.cursor()
-
-
sql = '''select TABLE_SCHEMA, table_name from information_schema.tables where table_schema not in ('information_schema', 'performance_schema', 'mysql') '''
-
# print sql
-
conn.execute(sql)
-
if conn.rowcount > 0:
-
for item in conn.fetchall():
-
sql = '''analyze table %s.%s''' % (item[0], item[1])
-
print sql + ' operation executes successfully!'
-
conn.execute(sql)
-
-
time.sleep(0.5)
-
-
conn.close()
-
db.close()
-
-
# 执行脚本
-
[root@MySQL01 script]# python2.6 analyze.py
-
analyze table test.area operation executes
-
analyze table test.class operation executes