远程 SQL 连接:mysqli_connect(): (HY000/1045): 用户访问被拒绝

Remote SQL connection: mysqli_connect(): (HY000/1045): Access denied for user

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

$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地址。

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

Server Connection Fail: Access denied for user db_user@'117.202.126.83' (using password: YES)

凭据正确,主机正确,最奇怪的部分是 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.

我错过了什么?

更新:我不确定我是不是很蠢,或者 hostgator 的说明是不是。 他们要求我们在数据库名称和数据库用户名之前添加 cpanel 用户名,后跟下划线。 在 cpanel 中,cpanel 用户名被强制添加到所有用户和数据库名称的前缀。所以在我的例子中,我有 cpanelUsername_cpanelUsername_databaseName 等变量。

谢谢大家的回复

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

转到您的 phpMyAdmin 有权访问的控制面板。 单击远程 MySQL 添加访问主机(您的本地 IP 即 运行 脚本) 然后你就可以访问远程 mysql 服务器。 然后,您可以使用 MySQL Workbench ()

测试连接