zoukankan      html  css  js  c++  java
  • 测试sql 语句执行时间

    #-*-coding:utf-8-*-

    import sys
    import os
    import time
    import traceback
    import MySQLdb as sqldb
    from log import tracelog


    query_list = [
    "select count(*) from T_FieldInfo,T_FamTableDescInfo,T_DataEleDesc;",            
    ]

    def getconn():
        host = '10.1.81.164'
        user = 'db_user'
        passwd = 'db_passwd'
        dbname = 'db_name'
        return sqldb.connect(host,user,passwd,dbname)

    def query_time(cursor,query):
        cursor.execute("flush hosts;")  #这个加入的是清空mysq缓存的命令,但是我还没有找到这个命令
        time.sleep(10)
       
        begintime = time.time()
        cursor.execute(query)
        endtime = time.time()
        spantime = endtime - begintime
        note = "sql:%s  spantime:%s" %(query,str(spantime))
        return note

    def openmysqport():
        strcmd=r'plink root@%s -pw %s "iptables -D INPUT -i bond1 -p tcp --dport 3306 -j DROP " ' %('10.1.81.164','root_passwd')
        os.system(strcmd) 
           

    def main():
        tracelog.setLogFileName(r"./query_time_st.txt")
        tracelog.log("======sql test begin==========")
       
        try:
            conn = getconn()
            cursor = conn.cursor()
            for query in query_list:
                qnote = query_time(cursor,query)
                tracelog.log(qnote)
        except:
            expmsg = ''.join(traceback.format_exception(*sys.exc_info()))
            tracelog.log(expmsg)
        finally:
            cursor.close()
            conn.close()
           
        tracelog.log("======sql test end==========")
       

    if __name__ == '__main__':
        main()

  • 相关阅读:
    嵌入式为什么要用Linux操作系统
    SPI 协议的理解
    跳转某指定地址、给某绝对地址赋值
    define 宏定义
    笔试--编程题
    spring 技巧集锦
    spring data jpa auditing
    spring security
    Python基础笔记
    调试EF源代码环境配置
  • 原文地址:https://www.cnblogs.com/haibianxiaolu/p/3957919.html
Copyright © 2011-2022 走看看