我正在尝试连接到Microsoft SQL Server 2008,我的应用程序在Linux服务器上运行,我安装了dblib pdo驱动程序。我使用端口转发通过端口1433连接。我不断收到此消息:
SQLSTATE[01002] Adaptive Server connection failed (severity 9);
PHP:
$connect = new PDO('dblib:host=ipaddres:1433;dbname=namedb','username','password');
答案 0 :(得分:8)
我建议用这种方式测试数据库连接w / tsql: tsql -H server_address -p 1433 -U user -P pass -D dbname
在我的情况下,我发现只是“原因:帐户的密码已过期” PDO给了我一个奇怪的错误,而tsql给了我正确的错误。
答案 1 :(得分:0)
将脚本从mssql_函数重写为pdo时遇到了同样的问题。 我注意到旧代码没有mssql_select_db,但我在pdo中使用了dbname。 当我删除dbname参数时,连接工作。