Ubuntu16.0.4设置mysql远程访问
一般程序开发过程为了方便调试中会需要远程访问数据库,而mysql本身是默认只能访问localhost,所以需要做一些设置。
1.首先,需要修改mysql的配置,执行
vi /etc/mysql/mysql.conf.d/mysqld.cnf
注释掉如下内容:
2.最简单粗暴的办法就是允许所有地址都可以通过root账号远程连接
msyql -u root -p
grant all on *.* to root@'%' identified by '123' with grant option;
flush privileges;
*.*:表示mysql下的所有数据库和表
%: 表示所有的地址,这是可以替换成特定的ip地址
123:远程连接时的密码
3.重启mysql:
/etc/init.d/mysql restart
或者,相对安全一点的办法就是在第二步的时候新建一个用户,然后对远程访问只开放需要的数据库表
# 创建用户
CREATE USER 'username'@'%' IDENTIFIED BY 'password';
#授权
grant all on test.* to username@'%' identified by '123' with grant option;
#刷新权限
flush privileges;
- with grant option:表示用户username可以将自身的权限传递给其他用户,取消则表示不能给其他用户授权