云服务器 域名备案 服务器 数据库 服务器安全 政策法规 域名相关 财务相关
文档下载 工单提交

帮助中心 > 数据库


数据库远程连接加密说明

安装好MysqL数据库,在虚拟主机上可以连到MySQL,但是在局域网的机器上连centos的时候,奇怪的现象就开始了, 从centos上打开mysql数据库查看user表, select host,user,password from user ;有这样显示: Host User Password localhost root 127.0.0.1 root localhost.domain root 按照远程连接方法修改之后 Host User Password % root localhost root 127.0.0.1 root localhost.domain root 这时候远程机器上不用密码可以访问到centos上的Mysql,但是一旦加上密码 Host User Password % root 123456 localhost root 127.0.0.1 root localhost.domain root 远程访问centos的mysql就禁止了,经过反复测试,发现Mysql的数据插入原来是使用了加密,关键是他有几个用户,比如localhost 这个他就没有加密,所以在本地上访问没问题,但是%这个远程访问的用户,Mysql就使用了加密, 即使是在centos上看到密码是123456 远程访问的密码也不会是123456,因为Mysql已经加密了。 实际上mysql的远程连接是在远程登录的机器上输入密码的时候,mysql就将输入的密码加密,然后再与数据库里面的密码对比。 要解决这个问题也很简单 只要先把centos上的密码设置为空,然后用远程机器登录,再重新设置密码如123456,这时候你看到的数据库里面的密码就已经是加了密的字符串了,这时,你可以再用其它的电脑使用设置的密码123456远程登录了。。。。 如果要在centos的mysql设置密码,那输入的就要是123456加密了的字符串。可惜的是我现在还不知道mysql是使用哪种加密方式。。。。谁研究过的,给我看看。。。。