簡體   English   中英

IfxPy 連接到 Informix DB 問題 - 添加了主機名的用戶

[英]IfxPy connection to Informix DB problem - user with added hostname

我目前正在嘗試使用 IfxPy 建立從服務器(64b 窗口)到 Avaya CMS DB(這是 Informix 引擎)的連接。 IfxPy 3.0.5 附帶 HCL ONEDB ODBC 驅動程序(版本 1.0.0.0),它被復制到站點包中。 我想我已經正確安裝了 IfxPy 模塊,將 ODBC 寄存器指向 iclit09b.dll,設置系統環境“INFORMIXDIR”。 我能夠導入 IfxPy,但 IfxPy.connect 從數據庫服務器返回錯誤。 我得到的錯誤表明,ODBC 驅動程序將帶有“@”的服務器主機名添加到用戶 ID,而 Informix 不理解這一點。 有沒有人有從 Python 連接到 Avaya CMS DB 的經驗?

import os
if 'INFORMIXDIR' in os.environ: #add dll lookup folder to BIN folder
    os.add_dll_directory(os.path.join(os.environ['INFORMIXDIR'],"bin"))
import IfxPy
conStr="SERVER=cms_net;HOST=10.10.10.10;SERVICE=50001;PROTOCOL=olsoctcp;DATABASE=cms;UID=myuser;PWD=mypassw;CLIENT_LOCALE=en_US.UTF8;"

conn = IfxPy.connect(conStr, "", "") 
IfxPy.close(conn)

我得到的異常:[OneDB][OneDB ODBC 驅動程序][OneDB]密碼不正確或用戶myuser@myserver[myserver 完整域路徑]在數據庫服務器上未知。 SQLCODE=-951

有任何想法嗎? 我與我們的 Avaya 人員合作,將用戶添加到適當的組並授予數據庫訪問權限。 但是我們仍然無法弄清楚這一點。 注意:數據庫設置為在端口 50001 上接受協議 olsctcp。謝謝。

我在 inte.net 上做了研究,運氣不佳。 我正在考慮使用 IBM 的 Informix Client SDK,希望它能奏效。 我還測試過從 ODBC 64b windows 建立連接,它允許正確設置,但測試失敗並出現完全相同的錯誤。

因此,對於每個處理與 Informix 連接的人來說,錯誤 -951 實際上意味着用戶未在 DB 上創建,或者該用戶只有一次密碼且無法登錄。 這就是我們的情況,在我們嘗試直接登錄數據庫服務器之后。 在其他新聞中,IfxPy 可以指向 ODBC iclit09b.dll(來自 IBM Informix ODBC 驅動程序,或者與 IfxPy 3.0.5 安裝一起使用的驅動程序)並且它可以在沒有 INFORMIXDIR 系統變量的情況下工作,它也可以在不設置 ODBC 的情況下工作Windows 寄存器中的驅動程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM