mysql 遠程鏈接數據庫的二種方法

1、鏈接遠程數據庫:mysql

一、顯示密碼sql

如:MySQL 鏈接遠程數據庫(192.168.5.116),端口「3306」,用戶名爲「root」,密碼「123456」數據庫

C:/>mysql -h 192.168.5.116 -P 3306 -u root -p123456服務器

二、隱藏密碼ide

如:MySQL 鏈接本地數據庫,用戶名爲「root」,spa

C:/>mysql -h localhost -u root -p 
Enter password:
orm

2、配置mysql容許遠程連接ip

    默認狀況下,mysql賬號不容許從遠程登錄,只能在localhost登陸。本文提供了二種方法設置mysql能夠經過遠程主機進行鏈接。it

1、改表法io

    在localhost登入mysql後,更改 "mysql" 數據庫裏的 "user" 表裏的 "host" 項,將"localhost"改稱"%"

例如:

  #mysql -u root -p

   Enter password:

    ……

   mysql>

  mysql>update user set host = '%' where user = 'root';

  mysql>select host, user from user;

2、受權法

    例如: 你想myuser使用mypassword(密碼)從任何主機鏈接到mysql服務器的話。

  mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

  若是你想容許用戶myuser從ip爲192.168.1.6的主機鏈接到mysql服務器,並使用mypassword做爲密碼

  mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY

  'mypassword' WITH GRANT OPTION;

   mysql>FLUSH PRIVILEGES

  使修改生效,就能夠了

常見問題: 
一、在採用法二受權法以後,沒法在本地登陸mysql(如:#mysql -u root -p -h 192.168.5.116
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'loadb116' (using password: YES)
上例中loadb116是主機名.
解決方法: 
一、這時可使用:mysql  -u root -p 登陸,進入到mysql後。
mysql> grant all privileges on *.* to 'root'@'loadb116' 
       identified by '123456' with grant option; 
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges; 
Query OK, 0 rows affected (0.00 sec)
二、在本地使用ip地址登陸
mysql -u root -p -h 192.168.5.116 Enter password: Welcome to the MySQL monitor.  Commands end with ; or /g.Your MySQL connection id is 60Server version: 5.1.45 MySQL Community Server (GPL)Type 'help;' or '/h' for help. Type '/c' to clear the buffer.mysql>

相關文章
相關標籤/搜索