远程SQL连接:mysqli_connect():( HY000 / 1045):用户

时间:2016-07-09 10:36:44

标签: php mysql sql mysqli easyphp

我有一个数据库要从localhost传输到我的远程服务器。文件太大了,我写了代码来复制表。但问题是连接不成功。我的代码看起来像这样。

$server_conn=mysqli_connect($db_host,$db_user,$db_pass,$db_name);
if (!$server_conn) {
    die("Server Connection Fail: " . mysqli_connect_error());
} 

其中$db_host是我服务器的IP地址。

当我加载脚本时,我得到的错误是

  

服务器连接失败:用户db_user@'117.202.126.83'拒绝访问(使用密码:是)

凭据正确,主机正确,最奇怪的部分是 117.202.126.83 是我的IP地址。

我不知道它是如何忽略主机并将我的连接IP地址作为主机。即使我将db_host作为远程服务器的IP地址。

另外,我使用Easy PHP 14.1运行APACHE 2.4.7,MYSQL 5.6.15和PHP 5.4.24来运行脚本。

我错过了什么?

更新:我不确定我是愚蠢的还是主持人的指示。 他们要求我们在数据库名称和数据库用户名之前添加cpanel用户名,后跟下划线。 在cpanel中,cpanel用户名以强制为前缀添加到所有用户和数据库名称。所以在我的例子中,我将变量设为cpanelUsername_cpanelUsername_databaseName,依此类推。

谢谢你们的回复

2 个答案:

答案 0 :(得分:3)

转到phpMyAdmin可以访问的cpanel。 单击Remote MySQL 添加访问主机(运行脚本的本地IP) 然后你就可以访问远程mysql服务器了。 然后,您可以使用MySQL Workbench()

测试连接

Go to the cpanel enter image description here

答案 1 :(得分:-2)

您确定使用正确的外部数据库hostname / ip吗?