Python测试数据库连通性:

#!/usr/bin/python27
#encoding: utf-8
import ibm_db
import os
import sys
def find_db(filename,db_name):
    f = open(filename)
    for line in f:
        file_db = line.strip().split(',')[0]
        if file_db == db_name:
            db_list = line.strip().split(',')
            break
    f.close()
    return db_list

def test_conn(db_name,db_host,db_port,db_user,db_pwd):
    db2 = "DATABASE=%s;HOSTNAME=%s;PORT=%s;PROTOCOL=TCPIP;UID=%s;PWD=%s;" %(db_name,db_host,db_port,db_user,db_pwd)
    try:
        conn = ibm_db.connect(db2, "", "")
    except:
        print "0"
    else:
        print "1"
        ibm_db.close(conn)

if __name__ == "__main__":
    file_path = os.path.join(os.path.split(os.path.realpath(__file__))[0],'db1.cfg')
    conn_db = find_db(file_path,sys.argv[1])
    db_name,db_host,db_port,db_user,db_pwd = tuple(conn_db)
    test_conn(db_name,db_host,db_port,db_user,db_pwd)

 

 db.cfg

PTEST1,192.168.2.180,50000,db2inst1,db2inst1
PTEST,192.168.2.180,50001,db2inst1,db2inst1

PTEST2,192.168.2.180,50000,db2inst1,db2inst1

 

posted on 2017-08-17 17:14  浮沉一梦  阅读(279)  评论(0编辑  收藏  举报