Php 无法从来宾连接到主机的数据库
在使用VirtualBox的Windows 8.1主机上的Ubuntu12.04 guest中,克隆的应用程序无法连接到主机的数据库。无论parameter.yml中的设置如何,登录时都会发生以下情况: 用户的SQLSTATE[28000][1045]访问被拒绝 “projectmana”@“localhost”使用密码:是 注意:登录凭据不同于数据库凭据 部分为parameters.yml 我已经确认guest OS已经安装了pdo_mysql。来宾操作系统中的MySQL客户端可以使用root或projectmana凭据连接到主机地址的MySQL。我还尝试了添加PDO参数的解决方案,但没有成功 使现代化 我还确认PDO可以通过Php 无法从来宾连接到主机的数据库,php,mysql,symfony,Php,Mysql,Symfony,在使用VirtualBox的Windows 8.1主机上的Ubuntu12.04 guest中,克隆的应用程序无法连接到主机的数据库。无论parameter.yml中的设置如何,登录时都会发生以下情况: 用户的SQLSTATE[28000][1045]访问被拒绝 “projectmana”@“localhost”使用密码:是 注意:登录凭据不同于数据库凭据 部分为parameters.yml 我已经确认guest OS已经安装了pdo_mysql。来宾操作系统中的MySQL客户端可以使用root
<?php
$dsn = 'mysql:dbname=projectmana;host=192.168.168.205';
$user = 'root';
$password = 'some password';
try {
$dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
exit;
}
echo "We're connected!";
错误消息指出,symfony试图连接到localhost,但在parameters.yml中,主机为192.168.168.205。您确定没有在config_env.yml或类似文件中覆盖主机吗?你清除了应用程序缓存了吗?@Pierre:想法很有趣,但是参数在config\u prod/dev文件中都没有被覆盖。prod和dev缓存都已清除,错误仍然存在。@Pierre:但你是对的!事实证明,在几个月前的无知中,我在捆绑包中包含了一个parameters.yml文件并将其导入。啊!如果你把你的评论作为回答,我会接受的。
<?php
$dsn = 'mysql:dbname=projectmana;host=192.168.168.205';
$user = 'root';
$password = 'some password';
try {
$dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
exit;
}
echo "We're connected!";