Windows-Server-2008
IIS 7.5 上的 php_ibm_db2.dll 使用 PHP 5.3 錯誤消息
我正在嘗試使用 ibm_db2 擴展來訪問 iSeries DB2 數據庫。
這是測試程式碼(取自這裡)
<?php $database = 'ALI452BFAL'; //library $user = 'STN452'; $password = '**********'; $hostname = 'myserverip'; $port = 50000; $conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;" . "HOSTNAME=$hostname;PORT=$port;PROTOCOL=TCPIP;UID=$user;PWD=$password;"; $conn = db2_connect($conn_string, '', ''); if ($conn) { print "ok"; db2_close($conn); } else { echo db2_conn_error() . '<br>' . db2_conn_errormsg(); } ?>
我已經安裝了一個非常基本的包,其中包含 db2 驅動程序並將其添加為擴展。
(用於 ODBC、CLI 和 .NET.msi 的 IBM 數據伺服器驅動程序)這是我的結果:
08001
$$ IBM $$$$ CLI Driver $$SQL30081N 檢測到通信錯誤。正在使用的通信協議:“TCP/IP”。正在使用的通信 API:“SOCKETS”。檢測到錯誤的位置:“10.10.0.120”。檢測錯誤的通信功能:“連接”。協議特定錯誤程式碼:“10061”、“ ”、“ ”。SQLSTATE=08001 SQLCODE=-30081
有人試過這個嗎??
您使用的埠號不正確 - iSeries 伺服器使用埠 446,而不是埠 50000。
但是,為了使用IBM Data Server Driver for ODBC、CLI 和 .Net來訪問您的 iSeries 伺服器,您必須擁有名為DB2 Connect的 IBM 產品的許可證。
您不需要使用 DB2 Connect,您可以使用*IBM i Access for Windows*產品,它提供了一個 ODBC 驅動程序來直接連接到您的 iSeries 伺服器。