Ubuntu 20.04 安装 MySQL 8.0+ 并配置远程连接
本文详细介绍在 Ubuntu 20.04 LTS 系统上安装 MySQL 8.0+ 数据库的完整流程。内容涵盖使用 apt 命令安装、设置 root 账户密码、修改 mysqld.cnf 配置文件以监听所有 IP、调整 user 表权限允许 root 远程登录,以及配置系统防火墙(ufw)和云服务器安全组放行 3306 端口,确保本地开发环境可稳定访问服务器数据库。
安装 MySQL Server
首先更新软件包列表,然后安装 MySQL 服务。为了便于执行,以下命令均包含 sudo 权限前缀。
- 更新源:
sudo apt-get update - 安装 MySQL Server:
sudo apt-get install mysql-server -y
安装完成后,MySQL 服务通常已自动启动。可通过以下命令检查服务状态:
sudo service mysql status
初始化 Root 账户密码
默认情况下,刚安装的 MySQL root 账户可能未设置密码或仅允许本地插件认证。为确保远程连接的兼容性并设置强密码,建议手动重置 root 密码。
直接输入 mysql 尝试登录(若无需密码即可进入):
若成功进入命令行,执行以下 SQL 语句设置密码(请将 mynewpassword 替换为你自定义的安全密码),并使用 mysql_native_password 身份验证插件以确保广泛的客户端兼容性:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'mynewpassword';
退出 MySQL 后再次登录时,系统将提示输入密码,表明密码设置生效:
配置监听地址与修改用户权限
要让外部设备访问 MySQL,需修改配置以监听非本地 IP,并授予 root 账户远程访问权限。
第一步:修改绑定地址
编辑 MySQL 主配置文件。如果未安装 vim,先通过 sudo apt-get install vim -y 安装,随后打开配置文件:
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
找到 bind-address = 127.0.0.1 这一行。默认值 127.0.0.1 表示仅允许本机连接。
将其修改为 0.0.0.0,这将使 MySQL 监听所有网络接口的连接请求。
按 i 进入插入模式进行修改,修改完成后按 Esc 退出编辑模式,输入 :wq 保存并退出。
重启 MySQL 服务使配置生效:
sudo service mysql restart
第二步:授权 Root 远程访问
使用刚才设置的密码登录 MySQL:
mysql -u root -p
登录后,切换到 mysql 系统数据库:
use mysql;
查询当前的用户主机限制情况:
select user, host from user;
可以看到 root 用户的 host 默认为 localhost。将其修改为 %,代表允许任何 IP 地址的连接:
update user set host='%' where user='root';
退出 MySQL:
exit;
配置防火墙与安全组
MySQL 默认使用 3306 端口。即使软件层已配置完毕,操作系统和云厂商的防火墙仍可能拦截连接。
系统防火墙 (UFW)
检查 Ubuntu 内置防火墙状态:
sudo ufw status
如果状态显示为 inactive,则无需操作。如果防火墙处于活跃状态,有两种处理方式:
- 关闭防火墙(仅限测试环境):
sudo ufw disable - 放行 3306 端口(推荐):
sudo ufw allow 3306
云服务器安全组
登录你的云服务器管理控制台(如阿里云、腾讯云、AWS等),找到“安全组”或“防火墙”设置页面。
云厂商通常默认只开放 SSH (22) 等少数端口。你需要添加入方向规则,允许 TCP 协议的 3306 端口通信,以允许外部访问。
测试连接
完成上述步骤后,在你的本地 Windows 电脑上使用 Navicat、DBeaver 或其他数据库管理工具进行连接测试。
输入服务器公网 IP、用户名 root 及设置的密码,应能成功建立连接并读写数据。
以上就是 Ubuntu 安装 MySQL 并启用远程连接的详细内容,更多关于 Ubuntu 配置 MySQL 远程访问的资料请关注本站其它相关文章!
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









