Linux 拨号vps windows公众号手机端

MySQL 远程访问权限设置详解

lewis 4年前 (2021-02-18) 阅读数 9 #网络运维

本文目录导读:

  1. <"http://#id1" title="修改 MySQL 用户的主机权限" "">修改 MySQL 用户的主机权限
  2. <"http://#id2" title="配置 MySQL 服务器的 IP 地址和端口" "">配置 MySQL 服务器的 IP 地址和端口
  3. <"http://#id3" title="配置防火墙允许远程连接" "">配置防火墙允许远程连接
  4. <"http://#id4" title="测试远程连接" "">测试远程连接

在许多情况下,您可能需要从远程计算机访问 MySQL 数据库,为了实现这一目标,您需要确保 MySQL 服务器配置正确,允许远程连接,以下是如何设置 MySQL 远程访问权限的详细步骤。

修改 MySQL 用户的主机权限

默认情况下,MySQL 用户只能从 localhost 连接,要允许远程连接,您需要更改用户的主机权限,登录到 MySQL 服务器,您可以使用以下命令:

mysql -u root -p

然后输入您的密码。

在 MySQL 提示符下,运行以下命令以授予用户对所有主机进行访问的权限:

GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY 'password';

'username' 替换为您要授予权限的 MySQL 用户名,将 'password' 替换为用户的密码。% 表示允许用户从任何主机连接,如果您只想允许特定 IP 地址的连接,可以将 % 替换为特定的 IP 地址或 IP 地址范围。

接下来,刷新权限以使更改生效:

FLUSH PRIVILEGES;

配置 MySQL 服务器的 IP 地址和端口

默认情况下,MySQL 仅监听 localhost(127.0.0.1)上的连接,要允许远程连接,您需要更改 MySQL 服务器的配置文件(通常是 my.cnfmy.ini)以指定要监听的 IP 地址和端口。

打开配置文件并找到以下行:

bind-address = 127.0.0.1

将其更改为:

bind-address = 0.0.0.0

这将使 MySQL 服务器监听所有可用的 IP 地址,如果您只想监听特定的 IP 地址,可以将 0.0.0.0 替换为相应的 IP 地址。

保存并关闭配置文件后,重新启动 MySQL 服务器以使更改生效,在大多数 Linux 系统上,您可以使用以下命令重新启动 MySQL 服务:

sudo service mysql restart

配置防火墙允许远程连接

如果您的服务器运行了防火墙(如 iptables 或 ufw),您需要配置防火墙规则以允许远程连接,默认情况下,MySQL 使用端口 3306,您需要确保防火墙允许从远程计算机到该端口的入站连接。

如果您使用 iptables,可以运行以下命令打开端口 3306:

sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT

如果您使用 ufw,可以运行以下命令打开端口 3306:

sudo ufw allow 3306/tcp

测试远程连接

完成上述步骤后,您应该能够从远程计算机连接到 MySQL 服务器,使用适当的客户端工具(如 MySQL Workbench、phpMyAdmin 或命令行客户端),尝试从远程计算机连接到 MySQL 服务器,确保提供正确的用户名、密码和服务器地址,如果一切设置正确,您应该能够成功建立远程连接。

版权声明

本文仅代表作者观点,不代表米安网络立场。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门