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

作者:Lit?Shang 时间:2024-01-24 21:24:21 

前言

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

来源:https://blog.csdn.net/weixin_50762970/article/details/126281684

标签:mysql,远程连接,远程
0
投稿

猜你喜欢

  • 详解Python如何使用Netmiko进行文件传输

    2021-06-20 19:49:17
  • javascript常见数字进制转换实例分析

    2024-04-30 10:08:48
  • Appium自动化测试中获取Toast信息操作

    2022-05-12 07:10:48
  • 分支任务:从哪里来,回哪里去

    2009-09-04 18:58:00
  • Python NLP开发之实现聊天机器人

    2021-12-21 18:04:48
  • golang 获取字符串长度的案例

    2024-04-27 15:40:47
  • 详解Windows下源码编译PaddlePaddle

    2022-07-06 00:22:09
  • MySQL 数据库的基础知识

    2024-01-17 03:05:52
  • python中set()函数简介及实例解析

    2022-05-15 17:12:24
  • 解读ASP.NET 5 & MVC6系列教程(2):初识项目

    2023-06-28 02:10:47
  • Python中map,reduce,filter和sorted函数的使用方法

    2023-04-04 14:01:48
  • oracle学习笔记(二)

    2012-01-05 18:59:20
  • MySQL中通过EXPLAIN如何分析SQL的执行计划详解

    2024-01-20 00:12:43
  • 基于Python实现自动扫雷详解

    2023-09-07 23:31:20
  • Python深拷贝浅拷贝图文示例清晰整理

    2022-05-05 11:26:40
  • Python递归函数 二分查找算法实现解析

    2021-06-22 05:58:38
  • Django框架会话技术实例分析【Cookie与Session】

    2021-06-24 03:41:53
  • python可视化text()函数使用详解

    2023-08-31 19:48:15
  • vue文本识别"\\n"换行问题的解决方式

    2024-05-09 10:51:43
  • Python plt.title()函数实例详解

    2023-07-02 21:00:34
  • asp之家 网络编程 m.aspxhome.com