1、登陸mysql數據庫
mysql -u root -p
查看user表
代碼如下 復制代碼mysql> use mysql;
Database changed
mysql> select host,user,password from user;
+--------------+------+-------------------------------------------+
| host | user | password |
+--------------+------+-------------------------------------------+
| localhost | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
+--------------+------+-------------------------------------------+
2 rows in set (0.00 sec)
可以看到在user表中已創建的root用戶。host字段表示登錄的主機,其值可以用IP,也可用主機名,
(1)有時想用本地IP登錄,那麼可以將以上的Host值改為自己的Ip即可。
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 | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| % | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
+--------------+------+-------------------------------------------+
3 rows in set (0.00 sec)
這樣機器就可以以用戶名root密碼root遠程訪問該機器上的MySql.
3、實現遠程連接(改表法)
代碼如下 復制代碼use mysql;
update user set host = '%' where user = 'root';
這樣在遠端就可以通過root用戶訪問Mysql.
另一種方法
mysql默認是不可以通過遠程機器訪問的,通過下面的配置可以開啟遠程訪問.
我的mysql環境是ubuntu+mysql5
1.修改/etc/mysql/my.conf,修改bind-address,指定為本機實際ip地址,你的my.con修改完大概是如下的樣子
代碼如下 復制代碼
[mysqld]
#
# * basic settings
#
default-character-set=utf8
default-storage-engine=innodb
bind-address = 192.168.1.107
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/english
skip-external-locking
2.用root登陸mysql執行如下命令
代碼如下 復制代碼 grant all on sonardb.* to sonar@'%' identified by '123456';sonardb替換為你想訪問的數據庫名,sonar是你的想使用的用戶名,123456替換為你的密碼,這樣就開啟了遠程訪問功能.
更多詳細內容請查看:http://www.111cn.net/database/mysql/34989.htm
上面的兩種方法一種是直接用root用戶在cmd模式下操作,一種是在配置文件裡面操作,大同小義了吧。