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 相关文章推荐
浅析InnoDB索引结构
Apr 05 MySQL
MySQL数据迁移相关总结
Apr 29 MySQL
Mysql官方性能测试工具mysqlslap的使用简介
May 21 MySQL
MySQL中使用or、in与union all在查询命令下的效率对比
May 26 MySQL
mysql升级到5.7时,wordpress导数据报错1067的问题
May 27 MySQL
MySQL 常见的数据表设计误区汇总
Jun 07 MySQL
MySQL系列之八 MySQL服务器变量
Jul 02 MySQL
SQL实现LeetCode(180.连续的数字)
Aug 04 MySQL
MySQL 如何限制一张表的记录数
Sep 14 MySQL
Mysql中一千万条数据怎么快速查询
Dec 06 MySQL
mysql数据插入覆盖和时间戳的问题及解决
Mar 25 MySQL
mysql的Buffer Pool存储及原理
Apr 02 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判断所处服务器操作系统的类型
2013/06/20 PHP
PHP类的反射用法实例
2014/11/03 PHP
php+html5实现无刷新图片上传教程
2016/01/22 PHP
PHP信号量基本用法实例详解
2016/02/12 PHP
php 输出json及显示json中的中文汉字详解及实例
2016/11/09 PHP
浅谈socket同步和异步、阻塞和非阻塞、I/O模型
2016/12/15 PHP
Javascript学习笔记4 Eval函数
2010/01/11 Javascript
js 纯数字不重复排列的另类方法
2010/07/17 Javascript
关于jquery.validate1.9.0前台验证的使用介绍
2013/04/26 Javascript
jQuery插件分享之分页插件jqPagination
2014/06/06 Javascript
javascript setinterval 的正确语法如何书写
2014/06/17 Javascript
JavaScript中的6种运算符总结
2014/10/16 Javascript
基于jQuery实现收缩展开功能
2016/03/18 Javascript
js滚动条平滑移动示例代码
2016/03/29 Javascript
页面get请求 中文参数方法乱码问题的快速解决方法
2016/05/31 Javascript
简易的JS计算器实现代码
2016/10/18 Javascript
微信小程序实战之运维小项目
2017/01/17 Javascript
AngularJS实现的获取焦点及失去焦点时的表单验证功能示例
2017/10/25 Javascript
Angular模版驱动表单的使用总结
2018/05/05 Javascript
Vue项目总结之webpack常规打包优化方案
2019/06/06 Javascript
package.json各个属性说明详解
2020/03/11 Javascript
JS数组的高级使用方法示例小结
2020/03/14 Javascript
jquery实现两个div中的元素相互拖动的方法分析
2020/04/05 jQuery
vue 获取元素额外生成的data-v-xxx操作
2020/09/09 Javascript
详解 javascript对象创建模式
2020/10/30 Javascript
Python struct模块解析
2014/06/12 Python
pandas的唯一值、值计数以及成员资格的示例
2018/07/25 Python
python获取引用对象的个数方式
2019/12/20 Python
jupyter 使用Pillow包显示图像时inline显示方式
2020/04/24 Python
全网首秀之Pycharm十大实用技巧(推荐)
2020/04/27 Python
使用CSS禁止textarea调整大小功能的方法
2015/03/13 HTML / CSS
简历自我评价模版
2014/01/31 职场文书
幼儿教师研修感言
2014/02/12 职场文书
银行文明优质服务培训心得体会
2016/01/09 职场文书
巧用 -webkit-box-reflect 倒影实现各类动效(小结)
2021/04/22 HTML / CSS
Java+swing实现抖音上的表白程序详解
2022/06/25 Java/Android