连接远程linux中的mysql
连接远程linux中的mysql
为什么要写这篇文章?原因很简单,就是在第一次连接的时候翻车了……
之前服务器系统是Window的,一切都依赖于BT面板,后来就将系统重置为了linux,然后在连接mysql的时候出现了问题,其实问题的产生也很简单,就是没有开放linux系统的3306端口,刚开始以为只要在阿里云中开放端口即可,但是一直连不上,后面在B站上看到一个视频才解决了问题。linux是一个封闭的系统,需要通过特定的端口访问系统中的资源。而mysql在默认的情况下也是不允许远程连接的,因此,我们要做两方面的设置,具体步骤如下:
一、设置mysql允许在别的主机上连接
- 首先登录到mysql中
- 敲入命令:
GRANT ALL PRIVILEGES ON *.* TO 'root' @'%' IDENTIFIED BY "数据库密码" WITH GRANT OPTION;
(设置所有主机都可以通过root用户登录到本机的mysql密码是by后面的) -
select * from mysql.user where user='root' \G;
//查看是否设置好了远程访问 - 退出mysql界面,输入
firewall-cmd --zone=public --add-port=3306/tcp --permanent
,开放3306端口 -
systemctl restart firewalld.service
重启防火墙进行生效 -
firewall-cmd --list-ports
查看端口是否开放
二、设置阿里云或者腾讯云服务器的安全组
-
登录阿里云/腾讯云找到服务器安全组
-
添加防火墙规则
-
开放服务器3306端口