1,sqlyog客戶端,用root用戶遠程鏈接mysql時,提示“訪問被拒絕”,在網上搜索了一下原因。
原來是mysql沒有授權其遠程鏈接,所以你只能在客戶端里面鏈接。
怎么解決呢?
原表數據
mysql> use mysql
mysql> select Host,User,Password from user ;
+---------------+---------+-------------------------------------------+
| Host | User | Password |
+---------------+---------+-------------------------------------------+
| localhost | root | *DEA65ABECC50A1FEBD9C0D0D9045E0DDB312F38F |
| www | root | *DEA65ABECC50A1FEBD9C0D0D9045E0DDB312F38F |
| 127.0.0.1 | root | *DEA65ABECC50A1FEBD9C0D0D9045E0DDB312F38F |
| ::1 | root | *DEA65ABECC50A1FEBD9C0D0D9045E0DDB312F38F |
創建一個新用戶
格式:grant 權限 on 數據庫名.表名 to 用戶@登錄主機 identified by "用戶密碼";
grant select,update,insert,delete on *.* to komiles@123.4.56.89 identified by "komiles1234";
執行完上面語句后,再執行
mysql> select Host,User,Password from user ;
+---------------+---------+-------------------------------------------+
| Host | User | Password |
+---------------+---------+-------------------------------------------+
| localhost | root | *DEA65ABECC50A1FEBD9C0D0D9045E0DDB312F38F |
| www | root | *DEA65ABECC50A1FEBD9C0D0D9045E0DDB312F38F |
| 127.0.0.1 | root | *DEA65ABECC50A1FEBD9C0D0D9045E0DDB312F38F |
| ::1 | root | *DEA65ABECC50A1FEBD9C0D0D9045E0DDB312F38F |
| 123.4.56.89 | komiles | *50663F1ECEAB844897BC272EC1AE7E83F442F649 |
+---------------+---------+-------------------------------------------+
此時,就可以用你剛才創建的用戶進行遠程訪問了。
以下是轉載http://www.cnblogs.com/smallstone/archive/2010/04/29/1723838.html
2、實現遠程連接(授權法)
將host字段的值改為%就表示在任何客戶端機器上能以root用戶登錄到mysql服務器,建議在開發時設為%。
update user set host = ’%’ where user = ’root’;
將權限改為ALL PRIVILEGES
mysql> use mysql;
Database changed
mysql> grant all privileges on *.* to root@'%' identified by "root";
Query OK, 0 rows affected (0.00 sec)mysql> select host,user,password from user;
+--------------+------+-------------------------------------------+
| host | user | password |
+--------------+------+-------------------------------------------+
| localhost | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| 192.168.1.12 | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| % | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
+--------------+------+-------------------------------------------+
3 rows in set (0.00 sec)
這樣機器就可以以用戶名root密碼root遠程訪問該機器上的MySql.
3、實現遠程連接(改表法)
use mysql;
update user set host = '%' where user = 'root';
這樣在遠端就可以通過root用戶訪問Mysql.