MySQL远程无法连接的一些常见原因总结


Posted in MySQL onSeptember 23, 2022

前言

MySQL是目前非常流行的数据库之一,也是中小企业持久化存储的首选数据库。

不同于我们日常学习,在实际应用中,MySQL服务都会挂载在某台服务器上。如果MySQL部署在某台云服务器上,这样一来,操纵数据库每次都需要先连接服务器,再进入数据库操作,不是很方便。

于是,学习远程连接 MySQL 的方法是数据库在服务器上时的必修课。下面我将讲述远程连接报错的常见三种原因。

原因1:

MySQL的远程访问权限未开放

如果最常见的无法远程连接问题,因为没开启远程访问权限导致的。

解决方案:

进入MySQL中,通过下述命令可以查看远程访问权限等,创建用户的远程访问权限并刷新指令即可,别忘记每次修改命令都要刷新指令哦。

常见命令如下:

# 查看当前远程连接的权限
select User,authentication_string,Host from user;
# 创建用户远程访问权限
create user root@'%' identified by '123456';
# 允许指定主机(IP地址)访问权限
grant all privileges on test.* to '用户名'@'ip地址' identified by '密码';
# 无法创建请删除重新试一遍
drop user root@'ip地址';
# 赋予用户操作的全部权限
grant all privileges on *.* to root@'%';
# 刷新指令
flush privileges;

原因2:

服务器开启了防火墙,导致MySQL的访问端口无法使用

如果服务器开启了防火墙,并且未设置MySQL端口开放策略,那么你将无法通过对应的端口远程访问MySQL。

MySQL远程无法连接的一些常见原因总结

解决方案:

关闭防火墙,或者开放对应的MySQL端口即可,比如默认的MySQL端口是3306,开放他就行。

常见命令如下:

# 查看防火墙状态
firewall-cmd --state
# 启动防火墙
systemctl start firewalld.service
# 关闭防火墙
systemctl stop firewalld.service
# 设置开机自启动
systemctl enable firewalld.service
# 开放防火墙端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 重新加载配置
firewall-cmd --reload
# 查看开放的防火墙端口
firewall-cmd --zone=public --list-ports

原因3:

docker链被清除,导致MySQL无法访问

如果你的MySQL是部署在docker容器中的,并且在部署完成后开启设置了防火墙。这个时候就可能导致docker的链被清除,即使你开启了远程访问权限,也只能通过进入容器访问MySQL,远程无法访问。

解决方案:

重新启动docker,可以恢复docker链。

# 重启docker
systemctl restart docker

总结

到此这篇关于MySQL远程无法连接的一些常见原因的文章就介绍到这了,更多相关MySQL远程无法连接原因内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
MySQL入门命令之函数-单行函数-流程控制函数
Apr 05 MySQL
mysql部分操作
Apr 05 MySQL
MySQL命令行操作时的编码问题详解
Apr 14 MySQL
MySQL之PXC集群搭建的方法步骤
May 25 MySQL
解决Navicat for Mysql连接报错1251的问题(连接失败)
May 27 MySQL
MySQL query_cache_type 参数与使用详解
Jul 01 MySQL
MySQL 8.0 驱动与阿里druid版本兼容问题解决
Jul 01 MySQL
Pycharm远程调试和MySQL数据库授权问题
Mar 18 MySQL
为什么MySQL不建议使用SELECT *
Apr 03 MySQL
以MySQL5.7为例了解一下执行计划
Apr 13 MySQL
MySQL三种方式实现递归查询
Apr 18 MySQL
Mysql 如何合理地统计一个数据库里的所有表的数据量
Apr 18 MySQL
MySQL count(*)统计总数问题汇总
Sep 23 #MySQL
MySQL常用慢查询分析工具详解
Aug 14 #MySQL
了解MySQL查询语句执行过程(5大组件)
Aug 14 #MySQL
MySQL 原理与优化之Update 优化
Aug 14 #MySQL
MySql统计函数COUNT的具体使用详解
Aug 14 #MySQL
MySQL 原理与优化之Limit 查询优化
MySQL 原理优化之Group By的优化技巧
Aug 14 #MySQL
You might like
php发送post请求的三种方法
2014/02/11 PHP
PHP中实现crontab代码分享
2015/03/26 PHP
基于laravel制作APP接口(API)
2016/03/15 PHP
ThinkPHP发送邮件示例代码
2016/10/08 PHP
thinkphp实现附件上传功能
2017/05/26 PHP
php读取本地json文件的实例
2018/03/07 PHP
Laravel实现短信注册的示例代码
2018/05/29 PHP
再论Javascript的类继承
2011/03/05 Javascript
JavaScript 代码压缩工具小结
2012/02/27 Javascript
解决js正则匹配换行问题实现代码
2012/12/10 Javascript
javascript解决innerText浏览器兼容问题思路代码
2013/05/17 Javascript
HTML5之lang属性与dir属性的详解
2013/06/19 Javascript
jQuery实现点击图片翻页展示效果的方法
2015/02/16 Javascript
基于JavaScript实现轮播图代码
2016/07/14 Javascript
jQuery EasyUI Tab 选项卡问题小结
2016/08/16 Javascript
nodejs实例解析(输出hello world)
2017/01/03 NodeJs
微信小程序 高德地图SDK详解及简单实例(源码下载)
2017/01/11 Javascript
AngularJS实现根据不同条件显示不同控件
2017/04/20 Javascript
详解Vue路由开启keep-alive时的注意点
2017/06/20 Javascript
ionic2懒加载配置详解
2017/09/01 Javascript
微信小程序 scroll-view 实现锚点跳转功能
2019/12/12 Javascript
使用Python编写Linux系统守护进程实例
2015/02/03 Python
Python中断言Assertion的一些改进方案
2016/10/27 Python
python实现扫描日志关键字的示例
2018/04/28 Python
Python 异常的捕获、异常的传递与主动抛出异常操作示例
2019/09/23 Python
Python如何使用内置库matplotlib绘制折线图
2020/02/24 Python
Python多进程multiprocessing、进程池用法实例分析
2020/03/24 Python
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
2013/05/03 面试题
如何反序的迭代一个序列?how do I iterate over a sequence in reverse order
2012/02/04 面试题
煤矿班组长的职责
2013/12/25 职场文书
大课间体育活动方案
2014/03/12 职场文书
市场营销毕业求职信
2014/08/07 职场文书
领导干部群众路线个人对照检查材料思想汇报
2014/09/30 职场文书
代办出身证明书
2014/10/21 职场文书
2014年小学工作总结
2014/11/26 职场文书
2016大学生国家助学贷款承诺书
2016/03/25 职场文书