您的位置:宽带测速网 > mysql教程 > 怎么样的Python脚本进行MySQL对所有表收集统计信息

怎么样的Python脚本进行MySQL对所有表收集统计信息

2025-06-24 08:11来源:互联网 [ ]

    [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