Ubuntu 上安装 MySQL 并开启远程访问
以下是详细的步骤指南,帮助你在 Ubuntu 上安装 MySQL 并开启远程访问。
1. 安装 MySQL
更新包列表并安装 MySQL 服务器:
sudo apt update
sudo apt install mysql-server
2. 配置 MySQL
安装完成后,运行以下命令启动 MySQL 安装安全设置:
sudo mysql_secure_installation
按照提示设置 root 密码并进行其他安全配置。
3. 允许远程访问
编辑 MySQL 配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf
:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
找到以下行并将其注释掉(或更改为你的服务器 IP 地址):
#bind-address = 127.0.0.1
将其更改为:
bind-address = 0.0.0.0
保存并关闭文件。
4. 为 root 用户设置远程访问权限
使用 MySQL 命令行工具登录 MySQL:
sudo mysql -u root -p
在 MySQL 命令提示符下运行以下命令:
CREATE USER 'root'@'%' IDENTIFIED BY 'Your_Password1!';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
5. 重启 MySQL 服务
sudo systemctl restart mysql
6. 配置防火墙
确保防火墙允许 MySQL 端口(默认是 3306)通过:
sudo ufw allow 3306
7. 验证远程访问
现在,你可以从远程机器上尝试连接到 MySQL 服务器:
mysql -u root -p -h your_server_ip
输入密码后,如果一切顺利,你将能够连接到 MySQL 服务器。
附加步骤:排查连接问题
1. 检查 MySQL 用户表
确认 root
用户是否有远程访问权限:
SELECT user, host FROM mysql.user;
你应该看到类似以下的输出:
| root | % |
| debian-sys-maint | localhost |
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
2. 检查网络连通性
使用 telnet
或 nc
检查 3306 端口的连通性:
telnet your_server_ip 3306
或者:
nc -zv your_server_ip 3306
评论区