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 相关文章推荐
mysql5.7使用binlog 恢复数据的方法
Jun 03 MySQL
Mysql systemctl start mysqld报错的问题解决
Jun 03 MySQL
mysql 联合索引生效的条件及索引失效的条件
Nov 20 MySQL
彻底解决MySQL使用中文乱码的方法
Jan 22 MySQL
深入讲解数据库中Decimal类型的使用以及实现方法
Feb 15 MySQL
一文搞懂MySQL索引页结构
Feb 28 MySQL
MySQL数据库查询进阶之多表查询详解
Apr 08 MySQL
MySQL 外连接语法之 OUTER JOIN
Apr 09 MySQL
MySQL创建管理RANGE分区
Apr 13 MySQL
MySQL如何使备份得数据保持一致
May 02 MySQL
mysql sock文件存储了什么信息
Jul 15 MySQL
mysql函数之截取字符串的实现
Aug 14 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/08 PHP
PHP包含文件函数include、include_once、require、require_once区别总结
2014/04/05 PHP
destoon后台网站设置变成空白的解决方法
2014/06/21 PHP
php实现网站文件批量压缩下载功能
2015/10/28 PHP
php创建无限级树型菜单
2015/11/05 PHP
php中目录操作opendir()、readdir()及scandir()用法示例
2019/06/08 PHP
Laravel 5.1 框架Blade模板引擎用法实例分析
2020/01/04 PHP
Javascript实例教程(19) 使用HoTMetal(2)
2006/12/23 Javascript
jquery插件validate验证的小例子
2013/05/08 Javascript
JavaScript生成GUID的多种算法小结
2013/08/18 Javascript
js或jquery实现页面打印可局部打印
2014/03/27 Javascript
javascript 中__proto__和prototype详解
2014/11/25 Javascript
jquery+php实现搜索框自动提示
2014/11/28 Javascript
jQuery插件expander实现图片翻转特效
2015/05/21 Javascript
javascript中的后退和刷新实现方法
2016/11/10 Javascript
JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
2017/01/05 Javascript
JS中去掉array中重复元素的方法
2017/05/26 Javascript
详解webpack2异步加载套路
2018/09/14 Javascript
微信小程序日历弹窗选择器代码实例
2019/05/09 Javascript
微信小程序表单验证WxValidate的使用
2019/11/27 Javascript
[41:52]2018DOTA2亚洲邀请赛3月29日 小组赛A组 TNC VS OpTic
2018/03/30 DOTA
Python中decorator使用实例
2015/04/14 Python
Python3实现从指定路径查找文件的方法
2015/05/22 Python
基于Django与ajax之间的json传输方法
2018/05/29 Python
使用Python完成15位18位身份证的互转功能
2019/11/06 Python
Python csv文件的读写操作实例详解
2019/11/19 Python
ddl,dml和dcl的含义
2016/05/08 面试题
社区维稳工作方案
2014/06/06 职场文书
青奥会口号
2014/06/12 职场文书
精神文明建设汇报材料
2014/12/24 职场文书
中班下学期幼儿评语
2014/12/30 职场文书
重阳节主题班会
2015/08/17 职场文书
八年级物理教学反思
2016/02/19 职场文书
MySQL之高可用集群部署及故障切换实现
2021/04/22 MySQL
小程序wx.getUserProfile接口的具体使用
2021/06/02 Javascript
教你用Python+selenium搭建自动化测试环境
2021/06/18 Python