在Ubuntu服务器上设置MySQL远程访问
如果使用MySQL,将需要在某些实例中对服务器进行远程访问。
举例来说,您有专门为数据库和Web设置的服务器:您的Web服务器托管一个WordPress实例,该实例需要能够访问远程MySQL服务器。Ubuntu Server不允许这样做,因此您必须手动配置MySQL以允许远程连接。该过程非常简单,您甚至可以锁定该MySQL服务器,以便仅特定IP地址上的特定用户可以访问它。
让我们深入研究并配置您的MySQL服务器以接受远程连接。我将在Ubuntu Server的16.04实例上进行工作,但是在几乎所有托管MySQL的Linux平台上,该过程都非常相似。
第一步:允许访问
MySQL仅允许从本地主机地址127.0.0.1访问。要更改此设置,您需要打开/etc/mysql/mysql.conf.d/mysqld.cnf文件并更改以下行:
bind-address = 127.0.0.1
至:
bind-address = 0.0.0.0
保存并关闭该文件。使用以下命令重新启动MySQL服务器:
systemctl restart mysql.service
第二步:向用户授予访问权限
假设您已经设置了WordPress服务器(运行在IP地址192.168.1.100上),以使用wpadmin用户访问MySQL服务器上名为wordpressdb的MySQL数据库。在MySQL服务器上,您必须从该IP地址向该用户授予对wordpressdb的访问权限。授予用户访问权限的方法如下(假设您已经在MySQL服务器上创建了用户wpadmin,并为其赋予了密码%u#098Tl3)。
1、登录到MySQL服务器。
2、使用命令mysql -u root -p登录到MySQL
3、输入MySQL root用户密码。
4、发出MySQL命令:
GRANT ALL ON wordpressdb.* TO 'wpadmin'@'192.168.1.100'>
5、使用命令FLUSH PRIVILEGES刷新MySQL特权;
6、使用命令exit退出 MySQL提示符;
您的WordPress实例(已为数据库设置了正确的用户凭据)应该能够将远程MySQL服务器用作其数据库主机。
至此,您已成功设置MySQL进行远程连接。
保持安全
尽管您可以打开MySQL进行远程服务器的连接,但是您应该只为选定的用户授予特权,以避免可能的安全漏洞。另外,请确保这些用户使用非常强的密码。