本地Mysql开启远程访问(图文)

目录

  • [1. 问题所示](#1. 问题所示)
  • [2. 原理分析](#2. 原理分析)
  • [3. 解决方法](#3. 解决方法)

1. 问题所示

事因是访问同事的数据库时,出现无法访问

java 复制代码
出现1130 - Host 'IT07' is not allowed to connect to this MySQL server

截图如下:

2. 原理分析

如果账号密码地址都正常的情况下,这是没开开启远程访问

  1. 编辑MySQL配置文件 :通常是my.cnf或my.ini,具体取决于你的操作系统和安装方式
    在配置文件中,需要找到bind-address参数,并将其设置为MySQL服务器的IP地址或0.0.0.0,以允许来自任何IP地址的连接

对所有网络接口开放,因此请确保在安全网络环境中执行此操作

sql 复制代码
bind-address = 0.0.0.0
  1. 创建远程访问 :默认情况下,MySQL服务器只允许本地连接(也可使用自带的账户,下述逻辑可忽略)

需要在MySQL中为远程用户创建帐户并授予适当的权限

使用以下命令登录MySQL服务器:

bash 复制代码
mysql -u 用户名 -p

创建一个允许远程访问的用户(例如,用户名为remote_user,密码为password,并允许从任何主机连接):

sql 复制代码
CREATE USER 'remote_user'@'%' IDENTIFIED BY 'password';
  1. 设置远程访问
    授予用户所需的权限,例如,如果用户需要对某个用户进行读写访问:
sql 复制代码
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;
  1. 刷新权限以确保更改生效:
sql 复制代码
FLUSH PRIVILEGES;

命令行结束之后还需要开启端口映射

具体步骤如下:在window中搜索高级安全Windows Defender防火墙的入站规则

开启本地端口的映射:

如果执行到这一步还不行

请完善后续两步操作

  • 防火墙设置:服务器上启用了防火墙,请确保允许MySQL服务器的TCP端口(通常是3306端口)的流量通过防火墙
  • 重启MySQL服务:保存并关闭配置文件后,重新启动MySQL服务器以使更改生效

3. 解决方法

最终操作完成后,可以进行访问:

相关推荐
我爱小疯喵喵9 分钟前
2 常用数据库命令行操作
数据库
七夜zippoe10 分钟前
Docker容器化实战:核心概念、镜像制作与多阶段构建全解析
java·jvm·数据库·docker·oracle·容器化
跟着珅聪学java16 分钟前
Electron 精美菜单设计
运维·前端·数据库
xcLeigh35 分钟前
Oracle 替换工程实践深度解析:金仓数据库破解 PL/SQL 兼容与跨交易日数据一致性核心难题
数据库·sql·oracle·数据迁移·金仓·kingbasees
软件开发技术深度爱好者36 分钟前
基于 Python tkinter 开发的SQLite数据库可视化小工具
数据库·sqlite
泯仲37 分钟前
从零起步学习MySQL 第四章:DQL查询全解析
数据库·mysql
原来是猿38 分钟前
MYSQL【库操作】
数据库·mysql
皮皮哎哟38 分钟前
嵌入式数据库从入门到精通
linux·数据库·sqlite3·sqlite3_open
爱吃羊的老虎1 小时前
【后端】MySQL 主从复制原理深度解析
数据库·mysql
blues92571 小时前
MySQL 篇 - Java 连接 MySQL 数据库并实现数据交互
java·数据库·mysql