phpMyAdmin提示access denied 目标计算机积极拒绝连接如何解决
phpMyAdmin 2002连接拒绝报错解决方案
你遇到的报错翻译如下:
MySQL返回:文档 无法连接:无效配置 mysqli::real_connect(): (HY000/2002): 无法建立连接,因为目标计算机主动拒绝了连接 你配置中定义的控制用户连接失败 mysqli::real_connect(): (HY000/2002): 无法建立连接,因为目标计算机主动拒绝了连接 phpMyAdmin尝试连接MySQL服务器被拒绝,你需要检查配置中的主机、用户名、密码信息,确认和MySQL服务器管理员给出的信息一致
排查解决步骤
- 第一步:确认MySQL服务正常运行
- Windows:打开运行窗口输入
services.msc打开服务管理器,找到MySQL对应服务,确认状态为「正在运行」,未启动则右键点击启动即可 - Linux:执行
systemctl status mysqld(部分发行版服务名为mysql)查看运行状态,未启动则执行systemctl start mysqld启动服务 - macOS:执行
sudo mysql.server start启动MySQL服务
- Windows:打开运行窗口输入
- 第二步:核对phpMyAdmin配置参数
打开phpMyAdmin根目录下的config.inc.php文件,逐一核对以下配置:$cfg['Servers'][$i]['host']:本地部署MySQL的话优先填127.0.0.1,避免填localhost走socket连接出错;非本地部署填MySQL服务器的实际IP$cfg['Servers'][$i]['port']:默认值为3306,如果你修改过MySQL的监听端口,要和实际端口保持一致$cfg['Servers'][$i]['user']、$cfg['Servers'][$i]['password']:确认填写的MySQL账号密码正确,密码区分大小写$cfg['Servers'][$i]['controluser']、$cfg['Servers'][$i]['controlpass']:无特殊需求可直接注释这两个配置项,有配置的话要确认控制用户的账号密码正确
- 第三步:非本地部署场景额外检查
- 登录MySQL执行
SELECT user,host FROM mysql.user WHERE user='你的MySQL用户名';,确认对应用户的host字段允许phpMyAdmin所在服务器的IP访问,需要授权的话执行GRANT ALL PRIVILEGES ON *.* TO '用户名'@'phpMyAdmin服务器IP' IDENTIFIED BY '密码'; FLUSH PRIVILEGES;即可 - 确认MySQL服务器的防火墙、云服务安全组已经放行3306端口的入站规则
- 登录MySQL执行
内容的提问来源于stack exchange,提问作者Wolfram Creations
相关产品推荐
相关产品推荐

