Mac 局域网内连接 MySQL

1. 前言

本文记录在 mac 局域网下实现数据库资源共享的问题

项目开发初期,都是在本地进行开发调试,数据库也在本地。那么和你配合开发的同事,就可能想要连接你 mac 电脑的数据库,连接过程中可能就会遇到问题。本文详细记录这些问题及解决方案

2. 绑定地址

一般情况下,你的 MySQL 的 bind-address 取值可能是下面这样的

复制代码
  1. [mysqld]
  2. # Only allow connections from localhost
  3. bind-address = 127.0.0.1

同一局域网内的电脑连接 MySQL 将会报以下错误,目前 MySQL 只能本机访问,不支持局域网内其他电脑访问

复制代码
  1. SQLSTATE[HY000] [1130] Host 'MACBOOKPRO-FB6C' is not allowed to connect to this MySQL server

MySQL 的配置项 bind-address 用于指定哪些 IP 可以连接数据库,下面是最常见的取值:

说明
127.0.0.1 只能本地连接
0.0.0.0 允许所有 IP 访问

可以通过命令查看当前 bind_address 配置

复制代码
  1. select @@bind_address;

下面是我的配置,如果你的查询结果是 127.0.0.1,那么只有你自己的电脑才能连接,别人都访问不了

3. 查找配置文件

下面这个命令可以用于查看数据库配置,以及 MySQL 引用了哪些配置文件和配置文件的加载顺序

复制代码
  1. mysql --verbose --help

Mac 中通过命令查找 MySQL 配置文件所在位置

特别注意:Mac 中 MySQL 的配置文件是 my.cnf,在 Windows 中是 my.ini

复制代码
  1. mysql --verbose --help | grep my.cnf

下面显示多个配置文件的优先加载顺序,在当前使用的配置文件中修改配置即可

4. 修改访问权限

注意:将修改权限命令的用户密码修改为你的正常密码,我的用户名是 root 密码是 123456

复制代码
  1. -- 修改权限
  2. grant all privileges on *.* to root@"%" identified by '123456' with grant option;
  3. -- 刷新权限
  4. flush privileges;
相关推荐
志栋智能6 小时前
超自动化安全:构建智能安全运营的核心引擎
大数据·运维·服务器·数据库·安全·自动化·产品运营
zhoutongsheng7 小时前
C#怎么实现Swagger文档 C#如何在ASP.NET Core中集成Swagger自动生成API文档【框架】
jvm·数据库·python
WinterKay7 小时前
【开源】我写了一个轻量级本地数据库浏览工具,支持 MySQL/Redis 只读查询
数据库·mysql·开源
zxrhhm8 小时前
Oracle 索引完整指南
数据库·oracle
程序猿乐锅9 小时前
【Tilas|第三篇】多表SQL语句
数据库·经验分享·笔记·学习·mysql
Navicat中国10 小时前
使用 Navicat 导入向导导入 Excel 数据时,系统提示导入成功,表中也能看到数据,但行数统计显示为 0,这是什么原因?
数据库·excel·导入
gmaajt10 小时前
Golang怎么做国际化多语言_Golang i18n教程【核心】
jvm·数据库·python
折哥的程序人生 · 物流技术专研10 小时前
从“卡死”到“秒过”:WMS销售数据跨库回填的极限优化之旅
数据库·机器学习·oracle
李可以量化10 小时前
DeepSeek 量化交易实战:用标准化提示词模板实现 AI 辅助交易决策
大数据·数据库·人工智能
maqr_11010 小时前
CSS如何利用Sass定义全局阴影方案_通过变量实现统一CSS风格
jvm·数据库·python