新买的服务器安装了Mysql服务端后,(Mysql安装,此处省略2000字,安装mysql各种报错啊,卸载还不干净,注册表refdit各种清理)然后远程访问不了,一开始以为服务器没有对外开放3306端口,然后在阿里服务器控制页面开放了3306,然后依然连接不上,报错host is not allowed to connect mysql
在网上百度了一下有很多方法,很多方法很复杂,也懒得去试了,有个比较简单的方法,抄袭过来,做个记录吧
这个错误的原因可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑(也就是服务器那台主机),登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从"localhost"改称"%"
mysql -u root -p,然后输入密码,登陆mysql
mysql>use mysql;
mysql>update user set host = ‘%’ where user = ‘root’;
mysql>select host, user from user;
mysql>select host, user from user;
现在发现host那个对应的root用户对应的host不再是只是本地的localhost了,已经变成了%,就是说所有电脑都可以使用root账户访问了
mysql>FLUSH PRIVILEGES;(这个sql命令是刷新保存的意思,大小写无所谓,但是必须要执行这条命令,非常重要,你不刷新,那个错误一直在)
然后你现在 再用远程访问,就可以访问到服务器了
嗯,就是这么简单