默認情況下mysql不允許遠程連接,業務上遇到了遠程連接mysql的需求,尋找了一番,將過程整理如下。
一、修改mysql的配置文件。
Ubuntu系統中mysql的配置文件地址在/etc/mysql/my.cnf
找到bind-address = 127.0.0.1這一行
改為bind-address = 0.0.0.0即可
也有可能已經存在,但是被注釋掉了,此時打開注釋即可。
二、為需要遠程登錄的用戶賦予權限
1、創建新用戶並賦予遠程連接的權限:
grant all on *.* to admin@'%' identified by '123456' with grant option;
語句注釋:
GRANT 【權限內容】 ON 【庫名】.【表名】 TO 【用戶名】@
'【IP地址】'
IDENTIFIED BY
'【密碼】'
WITH GRANT OPTION;
權限內容:所有權限(增、刪、改、查):all privileges
增 :insert
刪 :delete
改 :update
查 :select
庫名: 全部表 :*.*
某個庫的全部表 :user.*
某個庫的單個表 :user.student
ip地址: 所有設備 :%
特定設備(設備IP地址) :192.168.1.1
更改完以后立刻執行:FLUSH PRIVILEGES;
查看用戶數據
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;