连接失败:SQLSTATE [HY000] [2002] php_network_getaddresses:的getaddrinfo失败:产品名称或服务不知道
我使用mysql数据库,我部署我有一些托管公司的数据,它工作正常,但他们吸,所以我迁移到upCloud。我现在面临的连接到数据库中的问题,并得到一个错误:连接失败:SQLSTATE [HY000] [2002] php_network_getaddresses:的getaddrinfo失败:产品名称或服务不知道
Connection failed: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known
$servername = 'localhost';
$username = "root";
$password = "password";
$database = 'dbname';
try{
$conn = new PDO("mysql:host=localhost;dbname=driver", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
}
catch(PDOException $e)
{
echo "Connection failed: " . $e->getMessage();
}
我试图改变本地主机为127.0.0.1,但没有运气,我也试过在串操纵单引号和双引号,但也它没有工作。你能告诉我为什么我得到这个错误吗? 我在Ubonto 16.04部署此
仔细检查您的数据库连接的详细信息(主机,数据库名称,用户名和密码)。
如果仍然无法正常工作,那么显然最近在Ubuntu上发现并报告了一个bug,如果重新启动服务器,它会自行修复它。
更多细节在这里列出:
错误报道的Ubuntu: https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1674733
哪里这个问题报道和讨论的另一个StackOverflow的链接: PDOException: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known
希望它能帮助:)
编辑:
的Ubuntu显然已经发布了一个补丁,以及:https://www.ubuntu.com/usn/usn-3239-2/
更新你的Ubuntu和库的版本,在这个页面中列出。
什么upCloud的用于连接到数据库的建议? –
“建议”是什么意思? –
DidUpCloud告诉你数据库是如何配置的?它有私人IP吗?它位于您的网站所在的实例上吗? –