mac系统下docker安装配置mysql详细步骤

上文介绍了MacOS安装Docker傻瓜式教程,安装好后第一件事就决定把本地数据库迁移过来,那么首先就得安装mysql,下面就开始我们的安装之旅吧。

一、docker配置镜像加速器

我们使用docker pull拉取镜像时,因为网络原因,有时候从Docker Hub拉取镜像会非常缓慢耗时,甚至下载失败,这时候需要我们自己配置国内镜像加速器,docker官方和国内很多服务商都提供了加速服务,比如阿里云、七牛云等,下面就说一下怎样配置。

1、打开docker配置,点击Preferences

mac系统下docker安装配置mysql详细步骤

2、点击Daemon选项卡,在Registry mirrors下方点击+号,输入镜像地址,输入好后点击下方的Apply & Restart按钮,耐心等待重启。

mac系统下docker安装配置mysql详细步骤

mac系统下docker安装配置mysql详细步骤

用终端的朋友,可以在/daemon.json中配置,配置如下:

{  "debug" : true,  "registry-mirrors" : [    "http://hub-mirror.c.163.com",    "https://docker.mirrors.ustc.edu.cn",    "https://你的阿里云自动分配前缀.mirror.aliyuncs.com"  ],  "experimental" : false}

然后重启,重启好之后,就可以使用国内镜像加速拉取镜像了。

常用镜像地址

  • 阿里云镜像地址:https://你的阿里云自动分配前缀.mirror.aliyuncs.com
  • Docker官方提供的中国镜像库:https://registry.docker-cn.com
  • 七牛云镜像加速器:https://reg-mirror.qiniu.com
  • 网易镜像地址:http://hub-mirror.c.163.com

阿里云镜像加速详情见:https://help.aliyun.com/document_detail/60750.html?spm=a2c4g.11186623.6.549.53594685cbQcAy&accounttraceid=8fd73b11a6fe4707ad1735365d98d778kysa

mac系统下docker安装配置mysql详细步骤

二、docker安装mysql8

1、查看有哪些镜像,我的是刚安装docker,所以镜像为空。先搜索mysql有哪些镜像

mac系统下docker安装配置mysql详细步骤

2、我拉取的是最新版的mysql8.0.18,支持hash join

mac系统下docker安装配置mysql详细步骤

可以看到我的镜像列表里有mysql8.0.18的镜像了。

3、启动mysql服务

mac系统下docker安装配置mysql详细步骤

参数说明:

  • docker run:运行docker容器命令
  • --name mysql :给容器设置别名
  • -p 3306:3306:将容器的3306端口映射到宿主机的3306端口
  • -e MYSQL_ROOT_PASSWORD=你的密码 : 初始化root用户登录密码 
  • -d : 后台运行容器,并返回容器id
  • mysql:8.0.18:也可以使用镜像id,就是image ID

4、查看运行中的容器

mac系统下docker安装配置mysql详细步骤

mysql已经启动成功了。

5、进入mysql容器

mac系统下docker安装配置mysql详细步骤

可以看到根目录已经切换到容器的根目录

6、登录mysql

mac系统下docker安装配置mysql详细步骤

可以看到我们已经成功登录了,至此,docker安装mysql服务大功告成。

三、使用navacat连接mysql

开发中大多数都使用客户端工具连接mysql,常用的就是navicat,但是我们安装navicat以后,第一次连接mysql时通常会报下图中2059 - Authentication plugin 'caching_sha2_password' can't be loaded ...这个错误。

mac系统下docker安装配置mysql详细步骤

登录一下mysql看一下加密方式,可以看到mysql8的加密方式是新的caching_sha2_password

mac系统下docker安装配置mysql详细步骤

错误分析:

错误信息的意思是caching_sha2_password不能被加载,这是由于目前已有的客户端连接软件还不支持Mysql8新增加的加密方式caching_sha2_password,所以我们需要修改用户的加密方式,将其改为老的加密验证方式。

解决方案:

1、修改localhost加密方式:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

mac系统下docker安装配置mysql详细步骤

但是这里的localhost对应本地,如果是远程访问 mysql的话,需要将localhost改成%。

2、修改远程连接加密方式,localhost改为%

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';

mac系统下docker安装配置mysql详细步骤

再次连接,显示连接成功,就可以使用客户端工具来管理我们的数据库了。

mac系统下docker安装配置mysql详细步骤

本文主要讲了macos系统下,Docker配置镜像加速,docker安装mysql,以及使用navicat premium连接mysql,所有步骤都经过亲测,希望能给需要的朋友以帮助,如果有问题,欢迎留言讨论。

文章同步公众号:码之初,每天推送Java技术文章,期待您的关注!

原创不易,转载请注明出处,谢谢!