繁体   English   中英

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

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

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

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

此外,我正在使用运行 APACHE 2.4.7、MYSQL 5.6.15 和 PHP 5.4.24 的 Easy PHP 14.1 运行脚本。

我错过了什么?

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

谢谢大家的回复

转到您的 phpMyAdmin 有权访问的 cpanel。 单击远程 MySQL 添加访问主机(运行脚本的本地 IP)然后您可以访问远程 mysql 服务器。 然后可以使用 MySQL Workbench() 测试连接

转到控制面板 在此处输入图片说明

你确定你使用了正确的外部数据库主机名/ip吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM