Php IBM Db2的Db2连接问题
我正在尝试使用php连接db2数据库。现在,我将编写一些类似的代码(调用存储过程): 此处连接失败。从db2_conn_errormsg()返回的错误消息是: 这是一个AS/400系统。使用odbc,我们可以毫无问题地连接和访问数据库 [IBM][CLI驱动程序]是驱动程序而不是驱动程序。据我所知,它还需要启用到AS/400主机的连接 使用iSeries Access ODBC驱动程序连接失败会导致以下消息:Php IBM Db2的Db2连接问题,php,db2,ibm-midrange,Php,Db2,Ibm Midrange,我正在尝试使用php连接db2数据库。现在,我将编写一些类似的代码(调用存储过程): 此处连接失败。从db2_conn_errormsg()返回的错误消息是: 这是一个AS/400系统。使用odbc,我们可以毫无问题地连接和访问数据库 [IBM][CLI驱动程序]是驱动程序而不是驱动程序。据我所知,它还需要启用到AS/400主机的连接 使用iSeries Access ODBC驱动程序连接失败会导致以下消息: [IBM][iSeries Access ODBC驱动程序]通信链路故障。comm r
[IBM][iSeries Access ODBC驱动程序]通信链路故障。comm rc=8015-CWBSY1006-用户ID无效,密码长度=0,提示模式=Never,系统IP地址=127.0.0.1
检查ODBC DSN上的数据库驱动程序
您可以使用以下方式与db2连接:
$dbh = db2_connect('*LOCAL', $user, $password, array("i5_lib"=> $db);
如果DB2数据库和ZendServer位于同一个IBMi中,则使用“*LOCAL”,否则使用DB2名称 该消息表示连接到数据库服务器失败。您是将CLI驱动程序与其他odbc连接一起使用还是使用iSeries访问驱动程序?[IBM][CLI驱动程序]是DB2 odbc驱动程序,而不是iSeries访问驱动程序。检查您的ODBC提供程序配置。谢谢,正在处理它,但到目前为止还没有。IBM i上没有ZendServer。Php代码在不同的机器上运行。感谢您的帮助。我想你是对的,但还是无法连接。我使用DB2ODBC驱动程序和DB2Connect附带的“IBMDataServerDriverforODBC”创建了新的DSN。唯一的区别是,当我这次使用“IBM DATA Server Driver for ODBC”时,我得到了“在db2dsdriver.cfg配置文件中找不到数据库别名”错误消息。我试图定义不同的别名,但也没用。DB2 ODBC驱动程序在问题中返回相同的错误。在前面的评论中,您说您使用的是iSeries Access ODBC驱动程序,但这不是您在DSN中配置的驱动程序。我认为您要么需要切换到iSeries Access ODBC驱动程序,要么需要配置DB2Connect以便使用DB2ODBC驱动程序。
$user = 'user';
$password = 'pass';
$hostname = 'ip';
$db = 'db';
$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};HOSTNAME=$hostname;PROTOCOL=TCPIP;UID=$user;PWD=$password;DATABASE=$db;";
$conn = db2_connect($conn_string, $user, $password);
"[IBM][CLI Driver] SQL1032N No start database manager command was issued. SQLSTATE=57019 SQLCODE=-1032"
$dbh = db2_connect('*LOCAL', $user, $password, array("i5_lib"=> $db);