当前位置: 首页 > news >正文

MySQL 8 设置允许远程连接(Windows环境)

🌟 MySQL 8 设置允许远程连接(Windows环境)

在开发和部署应用时,经常需要从远程主机连接到MySQL数据库。默认情况下,MySQL仅允许本地连接,因此需要进行一些配置才能允许远程访问。今天,我将详细说明如何在Windows环境下配置MySQL 8,使其允许远程连接。

一、配置步骤

1. 开放Windows防火墙端口

MySQL默认使用端口3306进行通信。如果Windows防火墙阻止了该端口,远程连接将无法成功。以下是开放端口的步骤:

(1)打开Windows防火墙设置
  • 搜索“Windows Defender 防火墙”,打开防火墙设置。
(2)添加端口规则
  • 在左侧菜单中选择“高级安全设置”。
  • 在“入站规则”中,点击“新建规则”。
  • 选择“端口”,点击“下一步”。
  • 输入端口号3306,选择“TCP”,点击“下一步”。
  • 选择“允许连接”,点击“下一步”。
  • 确保所有配置文件(如“域”、“私有”、“公共”)都已勾选,点击“下一步”。
  • 给规则命名(如MySQL 3306),点击“完成”。

防火墙设置截图:

我直接关闭防火墙了

在这里插入图片描述

图1:Windows防火墙设置

2. 修改MySQL配置文件

MySQL的配置文件my.ini通常位于C:\ProgramData\MySQL\MySQL Server 8.0。以下是修改配置文件的步骤:

(1)找到配置文件
  • 打开文件资源管理器,进入C:\ProgramData\MySQL\MySQL Server 8.0
  • 找到my.ini文件。
(2)修改配置文件
  • 使用文本编辑器(如记事本)打开my.ini文件。
  • 找到[mysqld]部分,添加或修改以下内容:
bind-address=0.0.0.0
  • 保存文件并关闭编辑器。

配置文件修改截图:

在这里插入图片描述

在这里插入图片描述

图2:配置文件修改

3. 重启MySQL服务

修改配置文件后,需要重启MySQL服务以使更改生效。

(1)打开命令提示符
  • Win + X键,选择“命令提示符(管理员)”。
(2)重启服务
  • 输入以下命令重启MySQL服务:
net stop mysql80
net start mysql80

重启服务截图:

在这里插入图片描述

图3:重启服务

4. 配置MySQL用户权限

即使配置文件允许远程连接,MySQL用户可能仍然没有远程访问权限。以下是配置用户权限的步骤:

(1)登录MySQL
  • 打开命令提示符,输入以下命令登录MySQL:
mysql -u root -p
  • 输入root用户的密码。
(2)添加权限
  • 输入以下命令,为root用户添加远程访问权限:
-- 添加权限
grant all privileges on *.* to 'root'@'%' identified by 'your_password';
-- 刷新权限
flush privileges;
  • 如果你已经设置了root用户的密码,可以跳过identified by部分。
(3)验证权限
  • 输入以下命令,查看用户权限:
use mysql;
select user, host from user;
  • 如果看到root用户的host值为%,说明权限已正确设置。

MySQL权限设置截图:

在这里插入图片描述

图4:MySQL权限设置

5. 配置MySQL用户权限(方式二)

-- 登录mysql
mysql -u root -p;
--添加权限
grant all on *.* to 'root'@'localhost';
--刷新权限
flush privileges;
--切换mysql
use mysql;
--查看权限
select user,host from user;

在这里插入图片描述

没有成功

update user set host='%' where user='root';
--
grant all privileges on *.* to root@'%';
--
select user,host from user;

在这里插入图片描述

修改成功

远程连接成功截图:

在这里插入图片描述

图5:远程连接成功

三、常见问题排查

1. 防火墙问题

  • 确保Windows防火墙已正确开放端口3306
  • 如果使用的是第三方防火墙软件,也需要在该软件中开放端口。

2. MySQL配置文件未生效

  • 确保修改了正确的my.ini文件(路径为C:\ProgramData\MySQL\MySQL Server 8.0)。
  • 修改配置文件后,必须重启MySQL服务。

3. 用户权限问题

  • 确保root用户的host值为%
  • 如果权限未生效,可以尝试以下命令:
update user set host='%' where user='root';
grant all privileges on *.* to 'root'@'%';
flush privileges;

四、总结

通过以上步骤,你可以轻松配置MySQL 8允许远程连接。关键在于开放防火墙端口、修改配置文件以及正确设置用户权限。希望这篇文章能帮助你解决远程连接的问题!如果你在操作过程中遇到任何问题,欢迎在评论区留言。

相关文章:

  • Oracle 查询数据库对象的DDL语句
  • 解锁 AI 开发的无限可能:邀请您加入 coze-sharp 开源项目
  • antd的Form表单校验的方式有几种
  • 网络空间安全(29)漏洞扫描
  • undefined和null的区别 (新手小白级教程)
  • 第5关:猴子爬山
  • 航空动力系统适航标准要点手册
  • OpenRewrite配方之import语句的顺序——org.openrewrite.java.OrderImports
  • transformer bert 多头自注意力
  • element-plus中Autocomplete自动补全输入框组件的使用
  • 【Spring】详细剖析Spring程序
  • 多线程实现批量保存数据
  • PE,ELF,COFF
  • 基于物联网设计的疫苗冷链物流监测系统
  • 【前端知识】前端构建工具webpack的平替vite
  • 【软件测试】--面试
  • 如何用终端运行一个SpringBoot项目
  • SD ComfyUI工作流 一键Q版盲盒手办形象_多关键词切换
  • 星越L_副驾驶屏使用讲解
  • 每日一题之储存晶体
  • 集安网站制作/谷歌搜索优化seo
  • 企业官网设计/谷歌seo搜索引擎下载
  • 请多记几个本站域名防止/企业推广软文
  • 内容管理系统有哪些/seo对网店推广的作用有哪些
  • 陕西交通建设集团信息网站/如何优化网络环境
  • 域名怎么做网站内容/谷歌搜索引擎优化