ibm_db
是一个用于连接 IBM Db2 数据库的 Python 包。它提供了一个简单的 API 来执行 SQL 查询和管理数据库连接。为了实现高可用性和故障转移,ibm_db
支持使用 enableAlternateServerListFirstConnect
和 alternateServerList
参数。
以下是如何使用这些参数来配置 ibm_db
连接的示例。
ibm_db
包首先,确保你已经安装了 ibm_db
包。你可以使用 pip
来安装它:
pip install ibm_db
你需要在连接字符串中指定 enableAlternateServerListFirstConnect
和 alternateServerList
参数。以下是一个示例:
import ibm_db
# 主服务器连接参数
database = "DATABASE_NAME"
hostname = "primary_host"
port = "50000"
protocol = "TCPIP"
uid = "username"
pwd = "password"
# 备用服务器列表
alternate_server_list = "alternate_host1:50001,alternate_host2:50002"
# 连接字符串
conn_str = (
f"DATABASE={database};"
f"HOSTNAME={hostname};"
f"PORT={port};"
f"PROTOCOL={protocol};"
f"UID={uid};"
f"PWD={pwd};"
f"enableAlternateServerListFirstConnect=1;"
f"alternateServerList={alternate_server_list};"
)
# 建立连接
try:
conn = ibm_db.connect(conn_str, "", "")
print("Connected to the database")
except Exception as e:
print(f"Failed to connect to the database: {e}")
# 执行查询
try:
sql = "SELECT * FROM your_table"
stmt = ibm_db.exec_immediate(conn, sql)
result = ibm_db.fetch_assoc(stmt)
while result:
print(result)
result = ibm_db.fetch_assoc(stmt)
except Exception as e:
print(f"Failed to execute query: {e}")
# 关闭连接
ibm_db.close(conn)
enableAlternateServerListFirstConnect=1
:启用备用服务器列表的首次连接尝试。如果主服务器不可用,客户端将尝试连接到备用服务器列表中的服务器。alternateServerList=alternate_host1:50001,alternate_host2:50002
:备用服务器列表,格式为 hostname:port
,多个服务器用逗号分隔。ibm_db
包:ibm_db.connect
方法建立连接,并捕获任何可能的异常。ibm_db.exec_immediate
方法执行 SQL 查询,并使用 ibm_db.fetch_assoc
方法获取结果。ibm_db.close
方法关闭数据库连接。领取专属 10元无门槛券
手把手带您无忧上云