如何在使用python连接到DB2数据库时调用环境变量



我在.bashrc(linux)中将DB2用户名和DB2密码分别保存为'DB2_USER'和'DB2_PASS'。并且,我试图在我的python程序中调用它们来连接到DB2数据库。

。bashrc内容:(

export DB2_USER="my_username"
export DB2_PASS="my_password"
我的python代码片段:
db_user = os.environ.get('DB2_USER')
db_password = os.environ.get('DB2_PASS')
conn = ibm_db.connect('DRIVER={IBM DB2 ODBC DRIVER};DATABASE=<my_db>;HOSTNAME=<my_hostname>;PORT=50000;PROTOCOL=TCPIP;UID=db_user;pwd=db_password','','')

在执行上面的代码时,我得到下面的错误。我能知道还有其他方法吗?

Traceback(最近一次调用):File "test.py"第38行Conn = ibm_db。connect('DRIVER={IBM DB2 ODBC DRIVER};DATABASE=;HOSTNAME=;PORT=50000;PROTOCOL=TCPIP;UID=db_user;pwd=db_password', ", ")异常:[IBM][CLI Driver] SQL30082N安全处理失败有理由;24;("用户名和/或密码无效")。SQLSTATE = 08001SQLCODE = -30082

我之前的代码实际上取了db_user&db_pass为用户名和密码。使用连接构造连接字符串有帮助。

conn = ibm_db.connect('DRIVER={IBM DB2 ODBC DRIVER};DATABASE=<my_db>;HOSTNAME=<my_hostname>;PORT=50000;PROTOCOL=TCPIP;'+';UID='+db_user+';pwd='+db_pass,'','')

相关内容

  • 没有找到相关文章

最新更新