Centos7.6 Docker安装MySQL8

🔥 一条命令直接安装 + 启动 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

以上两条命令执行完成后,重新走上面的安装配置流程!

相关推荐
熊猫钓鱼>_>2 小时前
Playwright深度应用研究:从自动化到业务场景的全链路解决方案
运维·自动化·agent·playwright·skill·mcp·openclaw
G探险者2 小时前
DDD开发模式说明
java·运维·数据库
wuyikeer2 小时前
SQL2000在win10上安装的方法
运维·服务器
人工智能知识库2 小时前
H3CNE-Security GB0-510题库练习题(26年最新,带解析)
运维·服务器·数据库
夜月yeyue2 小时前
Linux 文件设备类型分析
linux·运维·网络·单片机
Insist7532 小时前
基于 ceph-deploy 部署 Ceph 集群
运维·服务器·ceph
柒.梧.2 小时前
高频Nginx面试题(含详细解析,面试必看)
运维·nginx·面试
躲在没风的地方2 小时前
异常执行顺序
java·运维·服务器·spring boot
白狐_7982 小时前
硬核实战:从零构建飞书 × OpenClaw 自动化情报站(一)
运维·自动化·飞书