在云服务器上面搭建了MariaDb(MariaDB是MySQL源代码的一个分支),但是远程链接不上。
首先,你要确保服务器安全组3306端口已经开放。
在确保端口开放的情况下,如果出现错误代码1130- Host xxx is not allowed to connect to this MariaDb server,说明是权限问题。如图:

有两种解决方法:
1.授权法
GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION; // %:表示从任何主机连接到mysql服务器
FLUSH PRIVILEGES;
或者
GRANT ALL PRIVILEGES ON *.* TO 'user'@'116.30.70.187' IDENTIFIED BY 'password' WITH GRANT OPTION;//表示从指定ip从任何主机连接到mysql服务器
FLUSH PRIVILEGES;
2.该表法
可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入MySQL后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
mysql -u root -p
mysql>use mysql;
mysql>update user set host = '%' where user = 'root' and host='localhost';
mysql>select host, user from user;
然后重启MySQL服务。或再执行 执行一个语句 mysql>FLUSH RIVILEGES 使修改生效。
这样就大功告成,就可以远程链接数据库了

本文介绍了当在云服务器上部署MariaDB后遇到无法远程连接的问题时,如何通过两种方法解决这一问题。一种方法是使用SQL命令进行授权,另一种则是直接修改MySQL内部的user表来实现远程访问。
5万+

被折叠的 条评论
为什么被折叠?



