我正在使用mac计算机OSX 10.9.Freetds和unixODBC已经安装在我的计算机上并作为扩展添加到php,试图连接到远程MSSQL服务器.以下是我的连接测试:
<?php
$dbh = new PDO('dblib:host=Hostname ;dbname=Dbname', 'user', 'pw');
if (!$dbh) {
die('Something went wrong while connecting to MSSQL');
}
?>
Run Code Online (Sandbox Code Playgroud)
错误日志文件显示:
[error] [client 127.0.0.1] PHP Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] Unknown host machine name (severity 2)
Run Code Online (Sandbox Code Playgroud)
可能是什么问题呢 ?如果我使用终端连接到同一个数据库,我的freetds和unixODBC似乎正常工作:
$ isql Hostname user pw
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
Run Code Online (Sandbox Code Playgroud)
和
$ tsql -S Hostname -U user
Password:
locale is "en_US.UTF-8"
locale …Run Code Online (Sandbox Code Playgroud)