Linux下安装mysql后只能在本机访问的问题解决

昨天在买的阿里云服务器上安装了mysql,却发现只有通过ssh连接后可以访问mysql,通过其第三方工具访问不到,提示连接被拒绝,是因为我们安装时创建的用户只有localhost的访问权限,没有其他机器的 访问权限。解决方案如下

  • 添加用户
 mysql -u root -p
 insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));
这样就创建了一个名为:test 密码为:1234 的用户。

  注意:此处的”localhost”,是指该用户只能在本地登录,不能在另外一台机器上远程登录。如果想远程登录的话,将”localhost”改为”%”,表示在任何一台电脑上都可以登录。也可以指定某台机器可以远程登录。
- 添加权限
首先为用户创建一个数据库(testDB):
mysql>create database testDB;
grant all privileges on testDB.* to test@localhost identified by ‘1234’;
- 刷新权限配置
flush privileges;//刷新系统权限表

use mysql;
select Host, User, Password from user;

这里写图片描述
如图所示

首先查看了iptables的设置,添加开放了3306端口
修改iptables的设置,添加开放了3306端口

iptables -A INPUT -p tcp -m tcp --sport 3306 -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --dport 3306 -j ACCEPT

连接可以访问

猜你喜欢

转载自blog.csdn.net/lizy928/article/details/81677175