文章出處
文章列表
設置mysql遠程連接root權限
在遠程連接mysql的時候應該都碰到過,root用戶無法遠程連接mysql,只可以本地連,對外拒絕連接。
需要建立一個允許遠程登錄的數據庫帳戶,這樣才可以進行在遠程操作數據庫。
方法如下:
默認情況下MYSQL數據庫的系統數據庫mysql系統表user內用戶權限只提供localhost本機登陸;
需要更改權限才能實現遠程連接MYSQL數據庫。
可以通過以下方式來確認:
root#mysql -h localhost -uroot -p
Enter password: ******
Welcome to the MySQL monitor. Commands end with ; or \g.
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)
可以看出已經添加了一個新的用戶
退出,試試效果....
現在可以成功登錄了..
PS:如果還不能登錄,請看下面
1.記得關閉VMware或者是linux的防火墻
2.打開/etc/my.cnf 文件,bind-address = ******** 一句前邊加上 # ,注釋掉
再加上一下兩句:
skip-external-locking
skip-name-resolve
3.重啟mysql: service mysql restart
4.在遠程連接應該就能連接上了
文章列表
全站熱搜