chaihongjun.me

mysql数据库远程连接开启和关闭

新的网站开发为了方便直接在生产环境服务器上配置好了数据库环境,而本地的开发环境则用来给前端写网站模板,后期只要将网站程序发布到服务器,并重新写好数据库配置即可立即使用。使用的lnmp一键安装包,默认是没有打开远程mysql访问能力的。只需以下几个步骤即可。

首先登录服务器进入mysql控制台

mysql -uroot -p

经过密码验证登录了mysql控制台,然后选择mysql系统数据库

use mysql;

然后更新下访问数据库的HOST,设置为任意IP可以访问

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

执行完上面的命令之后,可能会出错,因为lnmp已经默认有了"%"任意主机的配置,所以可直接进入下面的操作,给任意IP访问授权全部权限:

select host, user from user; #查看下用户
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '这里是密码' WITH GRANT OPTION;

最后刷新一下,即刻生效

FLUSH PRIVILEGES;

以上是对远程任意IP访问数据库的授权方法,如果在本地开发调试结束之后,因为安全考虑,而需要关闭远程连接及权限,只需要撤回授权,删除对应的数据库用户即可。

use mysql;
REVOKE ALL PRIVILEGES ON *.* from 'root'@'%'; #撤回root在任意IP的权限
DELETE FROM user WHERE User= "root" and Host="%";  #并删除这个用户
FLUSH PRIVILEGES;


知识共享许可协议本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。作者:柴宏俊»