MySQL 安装后默认只允许本地登录,如果需要从其他机器远程连接,必须手动开启远程访问权限。以下是具体设置步骤:
1. 登录 MySQL 并修改用户权限
使用 root 用户登录本地 MySQL:
mysql -u root -p输入密码后执行以下命令,允许 root 用户从任意 IP 远程登录(也可指定特定 IP):
CREATE USER 'root'@'%' IDENTIFIED BY '你的密码'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;说明:
- '%' 表示允许从任何 IP 连接,若只允许某个 IP(如 192.168.1.100),可改为 'root'@'192.168.1.100'
- FLUSH PRIVILEGES 是刷新权限表,使更改立即生效
2. 修改 MySQL 配置文件绑定地址
默认配置可能只监听 127.0.0.1,需修改配置文件使其监听所有 IP。
编辑 MySQL 配置文件(位置根据系统不同可能为 /etc/mysql/mysql.conf.d/mysqld.cnf 或 /etc/my.cnf):
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf找到 bind-address 这一行,将其改为:
bind-address = 0.0.0.0保存并退出。这个设置表示 MySQL 监听所有网络接口。
3. 重启 MySQL 服务
使配置更改生效:
sudo systemctl restart mysql4. 开放服务器防火墙端口
确保服务器防火墙允许 3306 端口(MySQL 默认端口)的访问。
如果是使用 ufw:
sudo ufw allow 3306/tcp如果是云服务器(如阿里云、腾讯云),还需在安全组中添加入站规则,开放 3306 端口。
完成以上步骤后,就可以使用客户端(如 Navicat、MySQL Workbench 或命令行)从远程连接 MySQL 了。
基本上就这些,关键点是用户权限、配置文件绑定和防火墙设置三者都要正确。
