Docker下MySQL 8.0.20 安全配置与持久化教程

0 下载量 200 浏览量 更新于2024-08-28 收藏 251KB PDF 举报
本文档是一份详细的Docker环境下MySQL 8.0.20的安装与配置教程。首先,作者介绍了如何通过Docker下载并启动MySQL 8.0.20镜像,包括使用`docker pull`命令获取镜像,然后使用`docker run`命令启动容器,并设置了环境变量`MYSQL_ROOT_PASSWORD`以提供root用户的密码,以及将容器的3306端口映射到宿主机的3306端口,确保外部可以访问数据库服务。 接下来,教程指导用户检查容器是否成功启动,使用`docker ps -a`命令列出所有运行的容器。在确认容器运行正常后,作者演示了如何通过`docker cp`命令将容器内的`/etc/mysql`配置文件复制到宿主机的`/mnt/sda1/mysql8.0.20`目录,以便后续进行个性化配置或备份。 然后,文档展示了如何删除并重新创建容器,以便清除旧数据并可能调整容器配置。这里强调了先停止容器(`docker stop mysql`)再删除(`docker rm mysql`),以避免数据丢失。新创建的容器会使用`mysql8.0.20.sh`启动脚本,该脚本包含了更为复杂的命令,如: - `-p`选项继续进行端口映射,保持与宿主机的通信。 - `--privileged=true`赋予容器管理员权限,允许执行一些高级操作。 - `--restartunless-stopped`设置容器在系统重启时仅在被手动停止的情况下才停止。 - `v`标志用于数据卷挂载,将容器中的`/etc/mysql`, `/logs`, 和 `/var/lib/mysql`分别挂载到宿主机的指定路径,实现数据的持久化存储。 - `-e`选项设置环境变量`MYSQL_ROOT_PASSWORD`,重置root用户的密码。 - `-d`标志在后台运行容器,使得容器运行更加高效。 整个教程覆盖了从基础的镜像拉取、容器启动到高级配置管理的完整流程,适合那些希望在Docker中管理和部署MySQL 8.0.20的用户参考。