我正在使用 mysql 数据库。我想用我写的脚本连接到它:
<?php
function getDatabase() {
$host = 'localhost:3306';
$db = 'freya';
$login = 'root';
$pw = 'helloitsme';
try {
return new PDO('mysql:host='.$host.';dbname='.$db.';charset=utf8', $login, $pw);
} catch (Exception $e) {
die('Erreur : '.$e->getMessage());
}
}
$db = getDatabase();
我发现此错误反复出现,但没有任何解决方案适用。 我检查了 my.cnf,我确定我正在使用 mysql 数据库所在的端口。 我还确定数据库名称、登录名和密码是正确的,因为我使用它们通过 shell 访问数据库。
可能是什么问题?
最佳答案
您不需要指定端口,因为 3306 是 mysql 的默认端口,但如果您这样做,正确的连接字符串是
'mysql:host=localhost;port=3306 ...'
关于php - 我有错误 : SQLSTATE[HY000] [2005] Unknown MySQL server host,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42193554/