🔥 一条命令直接安装 + 启动 MySQL 8
Docker 安装 MySQL 8 默认是 区分大小写的!
不手动配置,Linux 上默认:lower_case_table_names=0
bash
docker run -d \
--restart=always \
--name mysql8 \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123456 \
-v /mydata/mysql8/conf:/etc/mysql/conf.d \
-v /mydata/mysql8/data:/var/lib/mysql \
mysql:8.0 \
--lower_case_table_names=1
命令解释
mysql:8.0→ 安装 MySQL 8 稳定版MYSQL_ROOT_PASSWORD=123456→ root 密码(可自己改)3306:3306→ 端口映射-v→ 数据持久化(删容器数据不丢)--restart=always→ 开机自启- --lower_case_table_names → 1不区分大小写(Windows 模式,项目通用),0区分大小写(Linux 默认,坑死开发者)
✅ 安装成功检查
bash
docker ps

🔥 允许远程连接(必须执行!)
进入容器
bash
docker exec -it mysql8 mysql -uroot -p123456
执行授权(复制直接运行)
sql
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; FLUSH PRIVILEGES;
退出
sql
exit;
🔐 云服务器必须开放 3306 端口
去云服务器后台 → 安全组 → 放行 3306 端口
否则 Navicat 连不上!
⚠️ 重点踩坑!!!
安装时未指定--lower_case_table_names忽略大小写,导致删除容器重新安装
bash
# 删除旧容器
docker rm -f mysql8
# 删除旧数据(必须删!)
rm -rf /mydata/mysql8
以上两条命令执行完成后,重新走上面的安装配置流程!