Ubuntu 作为最常用的服务器发行版,安装 MySQL 相比 CentOS 更简洁,无需手动配置官方源 ,系统自带 APT 源即可直接安装。本教程以 Ubuntu 20.04 / 22.04 LTS 为例,覆盖安装、初始化、密码修改、远程连接、中文编码、权限配置、开机自启全流程,新手可直接跟着步骤完成。
一、安装前准备(必做)
1. 更新系统软件源
先更新 Ubuntu 软件包索引,避免安装时出现依赖错误:
sudo apt update
sudo apt upgrade -y
2. 卸载旧版本 / 冲突数据库(可选)
如果系统之前安装过 MySQL/MariaDB,先清理:
# 停止服务
sudo systemctl stop mysql
# 卸载
sudo apt remove -y mysql-server mysql-client mariadb-server
# 清理残留配置
sudo apt autoremove -y
sudo rm -rf /etc/mysql /var/lib/mysql
二、一键安装 MySQL 8.0 服务
Ubuntu 官方源默认提供 MySQL 8.0 稳定版,直接安装即可:
sudo apt install -y mysql-server
安装过程无图形界面、无需手动输入密码,全程自动完成。
安装完成后,MySQL 会自动启动 ,并设置为开机自启。
三、基础服务管理命令
1. 查看 MySQL 运行状态
sudo systemctl status mysql
看到 active (running) 说明服务正常运行。

2. 常用服务命令
# 启动
sudo systemctl start mysql
# 停止
sudo systemctl stop mysql
# 重启
sudo systemctl restart mysql
# 开机自启(默认已开启)
sudo systemctl enable mysql
四、安全初始化(强烈推荐)
MySQL 8.0 安装后自带安全配置脚本,一键加固安全:
sudo mysql_secure_installation
执行后按以下步骤操作:
- 是否启用密码验证插件? → 输入
y开启(提升密码强度) - 设置 root 密码等级 → 建议选
2(强密码:大小写 + 数字 + 符号) - 输入新的 root 密码 → 自定义强密码(必须牢记)
- 是否移除匿名用户? →
y - 禁止 root 远程登录? →
y(默认安全) - 删除 test 测试数据库? →
y - 重新加载权限表? →
y
完成后,MySQL 基础安全配置生效。
五、登录 MySQL 与密码配置
1. 本地登录 MySQL
Ubuntu 安装后,root 用户默认使用系统权限认证,直接用 sudo 登录:
sudo mysql -u root -p
输入你刚才设置的 root 密码,即可进入 MySQL 命令行。
2. 修改 root 密码(忘记密码 / 重置)
如果需要重置密码,执行以下 SQL:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的新密码';
FLUSH PRIVILEGES;
exit
修改后,下次登录直接用新密码即可。
六、开启远程连接(常用服务器配置)
默认 MySQL 只允许本地(127.0.0.1)连接,服务器需要开启外网访问:
1. 修改 MySQL 配置文件
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
找到这一行:
bind-address = 127.0.0.1
修改为:
bind-address = 0.0.0.0
保存退出(ESC → :wq)。
2. 创建远程访问用户(推荐)
不要直接用 root 远程连接,新建专用用户更安全:
# 登录 MySQL
sudo mysql
# 创建远程用户(% 代表所有IP可访问)
CREATE USER '你的用户名'@'%' IDENTIFIED BY '你的密码';
# 分配全部权限(生产环境可按需缩小权限)
GRANT ALL PRIVILEGES ON *.* TO '你的用户名'@'%' WITH GRANT OPTION;
# 刷新权限
FLUSH PRIVILEGES;
exit
3. 重启 MySQL + 开放防火墙
sudo systemctl restart mysql
# Ubuntu 防火墙开放 3306 端口
sudo ufw allow 3306/tcp
sudo ufw reload
完成后,即可用 Navicat/DBeaver 等工具远程连接。
七、解决中文乱码:配置 UTF-8 编码
MySQL 8.0 默认已使用 utf8mb4(支持表情的完整 UTF-8),只需确认配置:
查看编码
SHOW VARIABLES LIKE 'character%';
只要看到:
character_set_server = utf8mb4character_set_database = utf8mb4
就无需修改,不会出现中文乱码。
八、常用配置优化(小服务器必备)
编辑配置文件:
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
在 [mysqld] 下添加优化配置:
# 最大连接数
max_connections = 500
# 关闭域名解析(加速连接)
skip-name-resolve
# 慢查询日志
slow_query_log = 1
long_query_time = 2
重启生效:
sudo systemctl restart mysql
九、常见问题排查
问题 1:无法远程连接
- 检查
bind-address是否改为0.0.0.0 - 检查防火墙是否开放 3306
- 检查用户是否授权
@'%'
问题 2:登录报错 Access denied
使用 sudo 登录后重置密码:
sudo mysql
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
问题 3:启动失败
查看错误日志:
sudo cat /var/log/mysql/error.log
常见原因:配置文件写错、目录权限异常。
十、卸载 MySQL(备用)
如果需要彻底卸载:
sudo systemctl stop mysql
sudo apt remove -y mysql-server mysql-client
sudo apt autoremove -y
sudo rm -rf /etc/mysql /var/lib/mysql