无法连接到“XXX.XXX.XXX.XXXX”上的 MySQL 服务器 (111)
Posted
技术标签:
【中文标题】无法连接到“XXX.XXX.XXX.XXXX”上的 MySQL 服务器 (111)【英文标题】:Can't connect to MySQL server on 'XXX.XXX.XXX.XXXX' (111) 【发布时间】:2016-12-19 02:34:44 【问题描述】:我已经阅读了上述错误,据我了解,弹出错误的原因可能有很多。我会尽量具体。
我已经制作了一个 php 文件来做一个简单的数据库连接:
<?php
header('Access-Control-Allow-Origin: *');
$servername = "188.166.***.***";
$username = "root";
$password = "mypassword";
$dbname = "vod";
$con = new mysqli($servername,$username,$password,$dbname);
if($con->connect_error)
die("error ".$con->connect_error);
echo "success";
?>
当我运行上面的代码时,我得到了错误:
Can't connect to MySQL server on 'XXX.XXX.XXX.XXXX' (111)
当我在 URL 栏中输入 XXX.XXX.XXX.XXX
时,我被带到服务器的 index.html
文件。当我输入 XXX.XXX.XXX.XXX/phpmyadmin
时,我被带到 phpmyadmin。
我希望我把我的问题说清楚了。
【问题讨论】:
您是在尝试从您的开发机器还是在您的实时站点上连接到数据库服务器?如果是通过互联网,那么几乎可以肯定是防火墙问题 看看***.com/questions/11223235/…,希望对你有帮助。 @RamRaider URL“XXX.XXX.XXX.XXX”托管在互联网上,它不是本地服务器 避免使用root用户作为客户端。创建新用户用于访问数据库。有时 root 不是有效用户,不能用作客户端。有时会出现该错误。然后检查权限。 @reds 新用户应该拥有所有权限 【参考方案1】:这取决于你是否想这样做:
CREATE USER 'user'@'%' IDENTIFIED BY 'userpassword';
GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' WITH GRANT OPTION;
您可以在查询数据库中运行它。只需更改用户和密码。祝你好运
【讨论】:
先生,我创建了一个新用户并授予了它所有权限,但我仍然遇到同样的错误。 尝试删除您创建的用户。然后在您的查询中运行它。然后我们可以检查错误是否也返回。 检查 mysql 服务是否也在运行,如果分离,还要检查服务器和数据库之间的网络连接。 我删除了旧用户 root 并添加了一个新用户,但仍然出现同样的错误。这听起来像是一个愚蠢的问题,但是如何检查 MySQL 服务是否正在运行?我检查了“services.msc”,服务“mysql”和“MySQL51”都在本地系统上运行。我检查了任务管理器,mysqld也在运行 如果网络连接意味着互联网,那么也可以以上是关于无法连接到“XXX.XXX.XXX.XXXX”上的 MySQL 服务器 (111)的主要内容,如果未能解决你的问题,请参考以下文章
系统变量写在.bash_profile和.bashrc的区别