MacOS上Docker安装MySQL8.0详细步骤

0 下载量 190 浏览量 更新于2024-08-30 收藏 1.31MB PDF 举报
"本文主要介绍了在MacOS Catalina 10.15.1环境下,如何使用Docker安装和配置MySQL 8.0.18。文中详细列出了每个步骤,包括通过Docker搜索和拉取MySQL镜像,检查镜像是否下载成功,创建并运行MySQL容器,设置root用户的密码,以及解决因新密码加密方式导致的Navicat登录问题。此外,还提供了一些常用的Docker命令供参考。" 在Docker中安装MySQL 8.0的实现步骤如下: 1. 首先,你需要在Docker仓库中搜索MySQL镜像。通过在终端输入`docker search mysql`,你可以找到可用的MySQL镜像。 2. 接着,拉取MySQL 8.0的镜像。执行`docker pull mysql:8.0`,这将下载指定版本的MySQL镜像。如果不指定版本,Docker会默认拉取最新版本。 3. 检查MySQL 8.0镜像是否已经成功下载到本地仓库。使用`docker images mysql:8.0`命令可以查看相关镜像。 4. 创建并启动MySQL 8.0容器。使用`docker run`命令,并添加参数 `-p 3307:3306` 映射端口,`--name mysql8.0` 设置容器名,`-e MYSQL_ROOT_PASSWORD=root` 设置root用户的初始密码,最后指定镜像名称`-d mysql:8.0`。这里将本地3307端口映射到容器的3306端口,避免与已有MySQL服务冲突。 5. 通过`docker ps`命令,可以查看MySQL 8.0容器是否正常运行。 6. 进入到MySQL 8.0容器内部,执行`docker exec -it mysql8.0 bash`,然后使用`mysql -u root -p`登录MySQL服务器。 7. 如果遇到Navicat等客户端工具无法连接的问题,可能是因为MySQL 8.0采用了新的加密方式`caching_sha_password`。要解决这个问题,需要在MySQL中将root用户的加密方式改为`mysql_native_password`,并重置密码。可以使用SQL语句`ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';`进行修改。 8. 修改后,你可以尝试使用Navicat或其他客户端工具重新连接MySQL 8.0,这次应该能够成功登录。 文章中还提供了几个常用的Docker命令,如`docker search`用于搜索镜像,`docker pull`用于拉取镜像,`docker images`显示本地镜像列表,`docker ps`显示正在运行的容器,以及`docker container ls`查看所有容器状态。这些命令对于日常管理和操作Docker容器非常实用。