設置mysql遠程鏈接root權限

在遠程鏈接mysql的時候應該都碰到過,root用戶沒法遠程鏈接mysql,只能夠本地連,對外拒絕鏈接。 mysql

須要創建一個容許遠程登陸的數據庫賬戶,這樣才能夠進行在遠程操做數據庫。 sql

方法以下: 數據庫

默認狀況下MYSQL數據庫的系統數據庫mysql系統表user內用戶權限只提供localhost本機登錄; ide

須要更改權限才能實現遠程鏈接MYSQL數據庫。 debug

能夠經過如下方式來確認: server

root#mysql -h localhost -uroot -p get

Enter password: ****** it

Welcome to the MySQL monitor.   Commands end with ; or \g. io

Your MySQL connection id is 4 to server version: 4.0.20a-debug 登錄

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql> use mysql; (此DB存放MySQL的各類配置信息)

Database changed

mysql> select host,user from user; (查看用戶的權限狀況)

mysql> select host, user, password from user;
+-----------+------+-------------------------------------------+
| host       | user | password                                   |
+-----------+------+-------------------------------------------+
| localhost | root | *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
| 127.0.0.1 | root | *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
| localhost |       |                                            |
+-----------+------+-------------------------------------------+
4 rows in set (0.01 sec)

由此能夠看出,只能以localhost的主機方式訪問。
解決方法:
mysql> Grant all privileges on *.* to 'root'@'%' identified by 'kdm001' with grant option;
(%表示是全部的外部機器,若是指定某一臺機,就將%改成相應的機器名;‘root’則是指要使用的用戶名,)
mysql> flush privileges;    (運行此句才生效,或者重啓MySQL)
Query OK, 0 rows affected (0.03 sec)

再次查看。。

mysql> select host, user, password from user;
+-----------+------+-------------------------------------------+
| host       | user | password                                   |
+-----------+------+-------------------------------------------+
| localhost | root | *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
| 127.0.0.1 | root | *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
| localhost |       |                                            |
| %          | root | *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
+-----------+------+-------------------------------------------+
4 rows in set (0.01 sec)

能夠看出已經添加了一個新的用戶   檢查mysqld監聽模式是否是設爲只監聽localhost了,   用netstat看看,若是是的話。找到mysql的配置文件my.cnf,把bind address修改這臺機器的真實IP就能夠了   或者直接把bind address這一項註釋掉也行。須要重啓才能生效。

相關文章
相關標籤/搜索