我試圖連接到使用PDO遠程MySQL數據庫,但它失敗,錯誤:PHP PDO連接到MySQL失敗,的mysql_connect工作正常
Connection failed: SQLSTATE[28000] [1045] Access denied for user 'my_user'@'some.ip.address' (using password: YES)
這是我正在嘗試連接:
$dsn = "mysql:host=sql.my_domain.nazwa.pl;dbname=my_db;port:3307";
$user = "my_user";
$password = "my_password";
try {
$this->db = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
並且失敗。 但是這樣:
mysql_connect('sql.my_domain.nazwa.pl:3307', 'my_user', 'my_password');
工作正常。
任何人都知道什麼可能是錯誤的PDO,它的配置,我設置的參數或可能是這個特定的服務器(nazwa.pl)?
[解決]好了,這是簡單的(也是棘手注意到...)語法錯誤,它應該是一個=
,而不是:
在dsn
port
一部分。
有什麼區別? – PeeHaa 2012-08-03 12:01:27
@PeeHaa格式化的東西?我一直在與Apache相同的PC上使用PDO,但是我發現的文檔暗示了上述語法。 – Fluffeh 2012-08-03 12:02:48
這是令人尷尬的......我沒有注意到,在「端口」應該保持'='不'之後:'。現在它可以工作。 非常感謝你,這是正確的答案。 – zelazowy 2012-08-03 12:04:11