[TOC] #### 1. 前言 --- 本文記錄在 mac 局域網(wǎng)下實(shí)現(xiàn)數(shù)據(jù)庫資源共享的問題 項(xiàng)目開發(fā)初期,都是在本地進(jìn)行開發(fā)調(diào)試,數(shù)據(jù)庫也在本地。那么和你配合開發(fā)的同事,就可能想要連接你 mac 電腦的數(shù)據(jù)庫,連接過程中可能就會遇到問題。本文詳細(xì)記錄這些問題及解決方案 #### 2. 綁定地址 --- 一般情況下,你的 MySQL 的 bind-address 取值可能是下面這樣的 ``` [mysqld] # Only allow connections from localhost bind-address = 127.0.0.1 ``` 同一局域網(wǎng)內(nèi)的電腦連接 MySQL 將會報(bào)以下錯誤,目前 MySQL 只能本機(jī)訪問,不支持局域網(wǎng)內(nèi)其他電腦訪問 ``` SQLSTATE[HY000] [1130] Host 'MACBOOKPRO-FB6C' is not allowed to connect to this MySQL server ``` MySQL 的配置項(xiàng) bind-address 用于指定哪些 IP 可以連接數(shù)據(jù)庫,下面是最常見的取值: | 值 | 說明 | | ------------ | ------------ | | 127.0.0.1 | 只能本地連接 | | 0.0.0.0 | 允許所有 IP 訪問 | 可以通過命令查看當(dāng)前 bind_address 配置 ```bash select @@bind_address; ``` 下面是我的配置,如果你的查詢結(jié)果是 127.0.0.1,那么只有你自己的電腦才能連接,別人都訪問不了 ![](https://img.itqaq.com/art/content/4a42555160420bb468817cd0636c047f.png) #### 3. 查找配置文件 --- 下面這個(gè)命令可以用于查看數(shù)據(jù)庫配置,以及 MySQL 引用了哪些配置文件和配置文件的加載順序 ``` mysql --verbose --help ``` Mac 中通過命令查找 MySQL 配置文件所在位置 特別注意:Mac 中 MySQL 的配置文件是 my.cnf,在 Windows 中是 my.ini ```sql mysql --verbose --help | grep my.cnf ``` 下面顯示多個(gè)配置文件的優(yōu)先加載順序,在當(dāng)前使用的配置文件中修改配置即可 ![](https://img.itqaq.com/art/content/70a17eecea05d31c0083c97ddb498c93.png) #### 4. 修改訪問權(quán)限 --- 注意:將修改權(quán)限命令的用戶密碼修改為你的正常密碼,我的用戶名是 root 密碼是 123456 ```sql -- 修改權(quán)限 grant all privileges on *.* to root@"%" identified by '123456' with grant option; -- 刷新權(quán)限 flush privileges; ```