1. 程式人生 > >MySQL遠端訪問許可權,同時允許遠端連線和本地連線

MySQL遠端訪問許可權,同時允許遠端連線和本地連線

1、登陸mysql資料庫        mysql -u root -p mysql> use mysql; Database changed mysql> select host,user,password from user; +--------------+------+-------------------------------------------+ | host         | user | password                                  | +--------------+------+-------------------------------------------+ | localhost    | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| centos       | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| 127.0.0.1    | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E | +--------------+------+-------------------------------------------+ 2 rows in set (0.00 sec)    可以看到在user表中已建立的root使用者。host欄位表示可以登入的主機,其值可以用IP,也可用主機名,現在是有三個本地HOST可以登入,現在可以將host為centos改為遠端主機都可以訪問,即
 update user set host = ’%’ where user = ’root’ and host = ‘centos’;
改後表結構: +--------------+------+-------------------------------------------+ | host         | user | password                                  | +--------------+------+-------------------------------------------+ | localhost    | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| %            | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E | | 127.0.0.1    | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E | +--------------+------+-------------------------------------------+ 此時本地主機localhost和127.0.0.1可用於本地登入,%表示允許所有遠端登入 然後執行

mysql> flush privileges;     立即生效
mysql> quit;
現在便可在本地或者遠端登入了。
2、實現遠端連線(授權法)   將host欄位的值改為%就表示在任何客戶端機器上能以root使用者登入到mysql伺服器,建議在開發時設為%。      update user set host = ’%’ where user = ’root’;   將許可權改為ALL PRIVILEGESmysql> use mysql;Database changedmysql> grant all privileges  on *.* to [email protected]'%' identified by "root";Query OK, 0 rows affected (0.00 sec)  www.2cto.com  mysql> select host,user,password from user;+--------------+------+-------------------------------------------+| host         | user | password                                  |+--------------+------+-------------------------------------------+| localhost    | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E || 127.0.0.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E || %            | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |+--------------+------+-------------------------------------------+3 rows in set (0.00 sec)這樣機器就可以以使用者名稱root密碼root遠端訪問該機器上的MySql.
| localhost    | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |