mysql如何配置远程访问_mysql远程访问配置方法

8次阅读

首先修改用户权限允许远程登录,再将 MySQL 配置文件中 bind-address 设为 0.0.0.0 以监听所有 IP,接着重启 MySQL 服务,最后配置防火墙或安全组放行 3306 端口,四步完成后即可实现远程访问。

mysql 如何配置远程访问_mysql 远程访问配置方法

MySQL 默认安装后只允许本地访问,如果需要从其他机器连接 MySQL 服务器,必须进行远程访问配置。主要包括修改用户权限、绑定地址和 防火墙 设置。以下是具体操作步骤。

1. 修改 MySQL 用户权限

MySQL 的用户账户默认可能只允许本地登录(如 root@localhost),需添加或修改用户使其可以从远程主机连接。

方法一:创建新用户并授权

  • 登录 MySQL:mysql -u root -p
  • 执行以下命令创建可远程访问的用户:

CREATE USER ‘remote_user’@’%’ IDENTIFIED BY ‘your_password‘;
GRANT ALL PRIVILEGES ON *.* TO ‘remote_user’@’%’ WITH GRANT OPTION;
FLUSH PRIVILEGES;

说明:‘%’ 表示允许来自任意 IP 的连接,也可替换为特定 IP,如 ‘remote_user’@’192.168.1.100’ 提高安全性。

方法二:修改已有用户(如 root)支持远程访问

  • 查看当前用户权限:

SELECT Host, User FROM mysql.user;

  • 若 root 用户的 Host 为 localhost,需更新:

UPDATE mysql.user SET Host=’%’ WHERE User=’root’ AND Host=’localhost’;
FLUSH PRIVILEGES;

2. 修改 MySQL 配置文件绑定地址

MySQL 默认可能绑定到 127.0.0.1,限制了远程连接。需修改配置文件使其监听所有 IP 或指定公网 IP。

  • 找到 MySQL 配置文件 my.cnf 或 my.ini(Linux 通常在 /etc/mysql/my.cnf 或 /etc/my.cnf,Windows 在安装目录下)
  • 找到 [mysqld] 段下的 bind-address 配置项
  • 将其修改为:

bind-address = 0.0.0.0

说明:0.0.0.0 表示监听所有网络接口。如只想允许特定 IP,可设为服务器公网 IP。

若无此配置项,可手动添加。

3. 重启 MySQL 服务

修改配置后需重启服务使更改生效。

  • Linux 系统:

sudo systemctl restart mysql

  • 或使用:

sudo service mysql restart

  • Windows 系统可在服务管理器中重启 MySQL 服务,或运行:

net stop mysql
net start mysql

4. 防火墙与安全组设置

确保服务器防火墙或 云服务 商安全组放行 MySQL 默认 端口 3306。

  • Linux 使用 ufw 防火墙:

sudo ufw allow 3306

  • 使用 iptables:

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

  • 云服务器(如 阿里云 腾讯 云)需在控制台配置安全组规则,允许入方向 3306 端口访问。

完成以上步骤后,即可从远程客户端使用 MySQL 客户端 工具(如 Navicat、MySQL Workbench 或命令行)连接:

mysql -h your_server_ip -u remote_user -p

基本上就这些。只要用户权限、配置文件、服务重启和防火墙四步都正确,远程访问就能成功。注意生产环境避免使用 % 和 root 远程登录,应创建专用账号并限制 IP 以提升安全性。

text=ZqhQzanResources