mysql資料庫設定特定IP訪問
mysql資料庫的使用者連線賬號資訊和許可權在:mysql資料庫的user表裡
(1)首先是理解新建完的資料庫有哪些引數值:
①舉例1:本地搭建的mysql環境,如phpstudy環境下,開啟mysql資料庫,截圖如下:
localhost,127..0.0.1,::1都很容易理解,搭建mysql的這臺電腦連線使用。
192.168.1.1是本地的區域網ip,本地ip連線使用。
②舉例2:伺服器搭建的mysql環境,如linux環境下,開啟mysql資料庫,截圖如下:
localhost,127..0.0.1,::1都很容易理解,搭建mysql的伺服器上連線使用。
vm\_0\_3\_centos 是伺服器ip。遠端連線使用。(根據伺服器不同可能顯示的值有差異)。
(2)設定不可訪問許可權
一般是根據專案需要,設定伺服器上的mysql只有127.0.0.1可以訪問,和一些特定IP可以訪問(比如:自己公司的電腦外網IP,公司其他伺服器的IP),除此之外,其他的電腦IP都不可以連線此資料庫。
如圖,只需要增加localhost和伺服器IP(根據上面IP欄位顯示啥寫啥,這裡是vm\_0\_3\_centos)這兩行資料。
並且User和Password值設定為空,後面Y值都設定為N。
新增的方法可以是複製上面隨便一行為sql語句,改下值,插入新的資料。
需要linux執行下立即生效命令,才可以生效:
mysql -u root -p(連線資料庫)
FLUSH PRIVILEGES;(立即生效)
(PS:我這邊預設linux寶塔新建資料庫就是有這兩行,請自行檢視)
(3)設定特定可訪問許可權
根據專案需要,可能需要另外設定一個賬戶,密碼,然後允許公司內部訪問。
例如增加3個不同的ip,分別有自己的使用者名稱和密碼的使用者許可權。
增加命令如下:
①首先linux命令連線上伺服器。
②然後:mysql -u root -p
③增加命令:GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.1' IDENTIFIED BY '123456' WITH GRANT OPTION;
*.*表示所有資料庫,即完全訪問許可權,可以指定為特定資料庫。
root 是資料庫使用者名稱。(這個是設定連線的使用者名稱,可以是新的值)
192.168.1.1 這個是允許遠端訪問的IP的值。自行改為其他值。單引號內IP值如果為空或者為%,代表所有人可連線。
123456 是資料庫密碼。(這個是設定連線的密碼,可以是新的值)
④最後執行立即生效命令
FLUSH PRIVILEGES;