Ubuntu下遠端訪問MySQL資料庫

2021-08-26 10:51:05 字數 1311 閱讀 1260

mysql遠端訪問的命令

格式:mysql -h主機位址 -u使用者名稱 -p使用者密碼

示例:

yanggang@host:~$ mysql -h192.168.1.11 -uroot -p123456

error 2003 (hy000): can't connect to mysql server on '192.168.1.11' (111)

出現錯誤!無法連線遠端的mysql資料庫

mysql遠端連線資料庫,有兩種方式:

mysql.sock和tcp/ip,前者比後者連線訪問速度更快,但僅限於同一台本機,詳見

上述錯誤,是沒有遠端訪問許可權導致的

解決方法:

1 在目標伺服器上(192.168.1.11),修改mysql的my.cnf檔案:

sudo vi /etc/mysql/my.cnf

2 注釋掉bind-address,遮蔽其只對本地監聽

#bind-address = 127.0.0.1

3 啟動mysql服務,使其修改的配置生效,詳見

sudo restart mysql

配置完了伺服器的資料訪問許可權,此時還是不能遠端訪問mysql資料庫

這是因為現在還沒有對伺服器上的資料庫或表賦予訪問許可權(grant)

4 在伺服器上,登入mysql資料庫

mysql -u root -p123456

5 對資料庫top800賦予許可權

grant all privileges on top800.* to [email protected] identified by '123456';

flush privileges;

6 現在可以遠端訪問伺服器上的mysql

mysql -h192.168.1.11 -uroot -p123456

預設,只能訪問information_schema和top800,其中top800是我們在步驟5賦予許可權的資料庫

知識拓展:

1 在伺服器上刪除使用者對資料庫的訪問許可權:

revoke all privileges on top800.* from [email protected] identified by '123456';

2 在伺服器上刪除使用者root:

delete from user where user='yanggang';

3 在修改生效:

flush privileges;

4 在伺服器上查詢使用者:

更多參考

ubuntu下mysql開放遠端訪問

grant all privileges on to root identified by 123456 with grant option 123456是你自己的密碼 這樣以後可以在 use mysql select user,host from user where user root 看到ro...

ubuntu系統下mysql允許遠端訪問

首先檢視埠是否開啟 netstat an grep 3306 此圖為開啟3306埠的截圖,之前顯示為.127.0.0.1 3306 開啟mysql配置檔案vi etc mysql mysql.conf.d mysqld.cnf 將bind address 127.0.0.1登出 截圖最下面一行登出 ...

Ubuntu14 04允許遠端連線MySQL

首先要登入shell,然後再命令列輸入 root cloud mysql h localhost u root p enter password 輸入密碼後 然後輸入 use mysql 繼續輸入 select user,password,host from user 可以看到現在允許接入的是roo...