mysql客户端安装后如何设置远程访问权限_mysql客户端远程访问权限设置教程

来源:这里教程网 时间:2026-02-28 20:25:27 作者:

MySQL 安装完成后,默认只允许本地访问。如果需要从其他机器通过 MySQL 客户端远程连接数据库,必须配置远程访问权限。以下是具体设置步骤。

1. 登录 MySQL 并创建或修改用户权限

使用 root 账号或其他具有管理权限的账号登录 MySQL:

mysql -u root -p

输入密码后进入 MySQL 命令行。执行以下命令查看当前用户权限:

SELECT host, user FROM mysql.user;

若发现某个用户的 hostlocalhost,则无法远程连接。需将其改为允许远程访问的地址。

可以为特定用户开启远程访问,例如允许 root 用户从任意主机连接:

CREATE USER 'root'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

说明:
- '%' 表示允许来自任意 IP 的连接,也可替换为指定 IP(如 '192.168.1.100')以增强安全性。
- FLUSH PRIVILEGES 是刷新权限表,使更改立即生效。

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

默认情况下,MySQL 只监听本地回环地址(127.0.0.1),需修改配置使其监听外部请求。

编辑 MySQL 配置文件,通常位于:

Linux: /etc/mysql/mysql.conf.d/mysqld.cnf 或 /etc/my.cnf Windows: my.ini 文件(一般在安装目录下)

找到 bind-address 配置项:

bind-address = 127.0.0.1

将其改为:

bind-address = 0.0.0.0

表示监听所有网络接口。若只想允许特定网段,可设为服务器局域网 IP。

保存文件后重启 MySQL 服务:

# Linux
sudo systemctl restart mysql
# Windows
net stop mysql
net start mysql

3. 检查防火墙和网络设置

确保服务器防火墙放行 MySQL 默认端口 3306。

Linux 使用 ufw 的示例:

sudo ufw allow 3306/tcp

使用 iptables:

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

云服务器还需检查安全组规则,确保入站规则开放 3306 端口。

4. 从客户端测试连接

在远程客户端使用 MySQL 客户端工具连接:

mysql -h your_mysql_server_ip -u root -p

输入密码后若成功进入 MySQL 提示符,则说明远程访问已配置成功。

常见问题排查:
- 连接超时:检查网络、防火墙、bind-address 设置。
- 访问被拒:确认用户 host 是否为 % 或对应 IP,权限是否已刷新。
- 错误 1130:Host is not allowed to connect,说明用户权限不足或 host 不匹配。

基本上就这些。只要用户权限、配置文件和网络三层都正确设置,远程访问就能正常工作。注意生产环境避免使用 root@% 和弱密码,建议创建专用远程用户并限制 IP 范围。

相关推荐

热文推荐