Ubuntu下开启Mysql的远程访问

前段时间在实验室的云平台上新开了一台虚拟机,专门用作数据库服务器,供课题组组内同学使用,这就涉及到了数据库远程访问的问题。

出于安全方面考虑 MySql-Server 只允许本机(localhost,127.0.0.1)来连接访问. 这对于 Web-Server 与 MySql-Server 都在同一台服务器上的网站架构来说是没有问题的。

设置Ubuntu允许远程连接MySQL的步骤如下:

第一步:
在目录/etc/mysql下找到my.cnf,用vim编辑,找到my.cnf里面的

bind-address = 127.0.0.1

将其注释或将127.0.0.1替换为0.0.0.0即可实现允许任意IP的访问。

第二步:
1.用root账户登录Mysql数据库;

2.授权用户能进行远程连接

grant all on *.* to username@'%' identified by 'password';

注意:username是用户名,password是要自己填写的一个名字,例如:

grant all on *.* to zl@'%' identified by '123456';
"*.*":第一个*代表数据库名;第二个*代表表名。这里的意思是所有数据库里的所有表都授权给用户。  
root:授予root账号。    
“%”:表示授权的用户IP可以指定,这里代表任意的IP地址都能访问MySQL数据库。    
“password”:分配账号对应的密码,这里密码自己替换成你的mysql root帐号密码。 

3.最后刷新一下,执行:flush privileges

4.重启 MySQL:sudo /etc/init.d/mysql restart

第三步:
1.命令行方式登入:
远程登陆mysql,同时指定对应的端口和ip。

假设远程的ip为:10.154.0.43
端口为:3341

输入如下命令:

 #mysql -uroot -p -h10.154.0.43 -P3341

回车后:
会需要输入密码。

2.使用navicat for mysql登录:

Ubuntu下开启Mysql的远程访问_第1张图片
使用navicat for mysql登录

你可能感兴趣的:(Ubuntu下开启Mysql的远程访问)