[ad_1]
介绍
在传统的部署中,人们通常会安装 MySQL 服务器并在同一主机上使用它。 但是,强烈建议我们将 MySQL 服务器和客户端分开,MySQL 服务器应该从远程主机访问。 这种方法有助于系统变得更加安全并提高性能。
为了使上述方法成为可能,我们必须配置 MySQL 服务器以允许来自其客户端的远程连接。
配置 MySQL 服务器
首先,让我们配置 MySQL 服务器以侦听服务器上的预定义 IP 或所有 IP 地址。
如果 MySQL 服务器与客户端在同一网络中,则应在私有 IP 上配置侦听端口。
另一方面,如果你需要通过公网连接MySQL服务器,我们按照下面的配置来配置服务器:
打开配置文件:
$ sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
转到以 bind-address 开头的行
默认情况下,bind-address 的值为 127.0.0.1
如果要将 MySQL 服务器设置为侦听所有 IP 地址,请配置 bind-address = 0.0.0.0 的值
为了使更改生效,让我们重新启动 MySQL 服务:
$ sudo systemctl restart mysql
从远程主机授予用户访问权限
在这一部分,我们将向您展示允许远程用户访问数据库的方法。
登录MySQL服务器:
$ sudo mysql
然后,
mysql> GRANT ALL ON DATABASE-NAME.* TO [email protected] IDENTIFIED BY ‘USER-PASSWORD’;
例如:
mysql> GRANT ALL ON linuxways.* TO [email protected] IDENTIFIED BY ‘mysecuredpass’;
配置防火墙
MySQL 服务器侦听端口 3306。您必须打开此端口以允许来自远程主机的流量。 您可以使用以下方法之一:
iptables
$ sudo iptables -A INPUT -p tcp --destination-port 3306 -j ACCEPT
ufw
如果使用 ufw 打开 3306 端口,只需运行以下命令即可:
$ sudo ufw allow 3306/tcp
结论
您已经详细了解了如何允许远程连接到 MySQL 服务器。
如果您有任何疑虑,请告诉我。 感谢您的阅读。
[ad_2]