【MySql】許可權不足導致的無法串連到資料庫以及許可權的授予和撤銷

來源:互聯網
上載者:User

標籤:

【環境參數】

1、Host OS:Win7 64bit

2、Host IP:192.168.10.1

3、VM: VMware 11.1.0

4、Client OS:CentOS 6

5、Client IP:192.168.10.1

6、MySql: 5.1.73

 

 【障礙再現】

    Host is not allowed to connect to this MySql Server 

    當“初次”在CentOS系統上(安裝在虛擬機器中)安裝並且簡單配置完MySql伺服器之後,想要在本地訪問虛擬機器上的MySql資料庫,當在本地輸入mysql登陸命令後,出現如所示錯誤。

簡而言之,即Host(192.168.10.1)不允許串連MySql資料庫。

  

 

【障礙原因】

    Host端的許可權不足。    在MySql資料庫伺服器端的mysql資料庫中,有一個user表,該表中就記錄了可以登入MySql伺服器的帳號相關資訊,如所示。  

    此時,user表中的host欄位僅僅有“localhost”這一條記錄,則說明了MySql伺服器僅僅允許從“localhost(此處的localhost指的是虛擬機器)”登入到資料庫。

    因此,若想允許其他非localhost的使用者訪問,就要修改host欄位的數值。   【解決方案01:該表法】     將user表中host欄位中的資料修改為“%”      注意,修改完之後,要記得“ 重新整理許可權”,否則,Host端依然無法串連到MySql上。     【解決方案02:授權法】 以下幾個樣本可以作為有價值的參考:(自己經過測試,可以起效) (1) 如果想要讓資料庫使用者myDbUser01,使用密碼myPassword,從" 任何主機"串連到mysql伺服器的話,可以使用如下命令:mysql> GRANT ALL PRIVILEGES ON *.* TO ‘myDbUser01‘@ ‘%‘ IDENTIFIED BY ‘myPassword‘ WITH GRANT OPTION;mysql> FLUSH PRIVILEGES;  (2) 如果想要讓資料庫使用者myDbUser01,使用密碼myPassword,從" ip為192.168.10.1的主機"串連到mysql伺服器,可以使用如下命令:mysql> GRANT ALL PRIVILEGES ON *.* TO ‘myDbUser01‘@ ‘192.168.10.1‘ IDENTIFIED BY ‘myPassword‘ WITH GRANT OPTION;mysql> FLUSH PRIVILEGES;  (3) 如果想要讓資料庫使用者myDbUser01,使用密碼myPassword,從ip為192.168.10.1的主機串連到mysql伺服器的" dk資料庫",可以使用如下命令:mysql> GRANT ALL PRIVILEGES ON  dk.* TO ‘myDbUser01‘@‘192.168.10.1‘ IDENTIFIED BY ‘myPassword‘ WITH GRANT OPTION;mysql> FLUSH PRIVILEGES;   【拓展:撤銷使用者權限】命令: REVOKE privilege ON databasename.tablename FROM ‘username‘@‘host‘;
說明: privilege, databasename, tablename - 同授權部分.
例子: REVOKE SELECT ON *.* FROM ‘pig‘@‘%‘;
注意: 
  REVOKE語句只能取消使用者的許可權,而不可以刪除使用者。即使取消了所有的許可權,使用者仍然可以串連到伺服器。
要想徹底的刪除使用者,必須使用DELETE語句將該使用者的記錄從MySQL資料庫中的user表中刪除。該語句的文法格式如下:
Delete from user where user = "user_name" and host = "host_name" ;
使用DELETE刪除使用者sss,代碼如下: 
mysql> use mysql
Database changed
mysql> delete from user where user=‘sss‘ and host=‘localhost‘ ;
mysql>flush privileges ;
Query OK, 1 row affected (0.02 sec)   
其中,delete用於刪除使用者,flush告訴伺服器重新載入授權表。

 

讀者如要轉載,請標明出處和作者名,謝謝。

地址01:http://space.itpub.net/25851087

地址02:http://www.cnblogs.com/zjrodger

作者名:zjrodger 

【MySql】許可權不足導致的無法串連到資料庫以及許可權的授予和撤銷

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.