前段时间在实验室的云平台上新开了一台虚拟机,专门用作数据库服务器,供课题组组内同学使用,这就涉及到了数据库远程访问的问题。
出于安全方面考虑 MySql-Server 只允许本机(localhost
,127.0.0.1
)来连接访问. 这对于 Web-Server 与 MySql-Server 都在同一台服务器上的网站架构来说是没有问题的。
设置Ubuntu允许远程连接MySQL的步骤如下:
第一步:
在目录/etc/mysql
下找到my.cnf
,用vim编辑,找到my.cnf
里面的1
bind-address = 127.0.0.1
将其注释或将127.0.0.1
替换为0.0.0.0
即可实现允许任意IP的访问。
第二步:
1.用root
账户登录Mysql数据库;
2.授权用户能进行远程连接1
grant all on *.* to username@'%' identified by 'password';
注意:username
是用户名,password
是要自己填写的一个名字,例如:1
grant all on *.* to zl@'%' identified by '123456';
1 | "*.*":第一个*代表数据库名;第二个*代表表名。这里的意思是所有数据库里的所有表都授权给用户。 |
3.最后刷新一下,执行:flush privileges
;
4.重启 MySQL:sudo /etc/init.d/mysql restart
第三步:
1.命令行方式登入:
远程登陆mysql,同时指定对应的端口和ip。
假设远程的ip为:10.154.0.43
端口为:3341
输入如下命令:1
#mysql -uroot -p -h10.154.0.43 -P3341
回车后,会需要输入密码。
2.使用navicat for mysql登录: