mac系统下docker安装配置mysql详细步骤
上文介绍了MacOS安装Docker傻瓜式教程,安装好后第一件事就决定把本地数据库迁移过来,那么首先就得安装mysql,下面就开始我们的安装之旅吧。
一、docker配置镜像加速器
我们使用docker pull拉取镜像时,因为网络原因,有时候从Docker Hub拉取镜像会非常缓慢耗时,甚至下载失败,这时候需要我们自己配置国内镜像加速器,docker官方和国内很多服务商都提供了加速服务,比如阿里云、七牛云等,下面就说一下怎样配置。
1、打开docker配置,点击Preferences
2、点击Daemon选项卡,在Registry mirrors下方点击+号,输入镜像地址,输入好后点击下方的Apply & Restart按钮,耐心等待重启。
用终端的朋友,可以在/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
二、docker安装mysql8
1、查看有哪些镜像,我的是刚安装docker,所以镜像为空。先搜索mysql有哪些镜像
2、我拉取的是最新版的mysql8.0.18,支持hash join
可以看到我的镜像列表里有mysql8.0.18的镜像了。
3、启动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、查看运行中的容器
mysql已经启动成功了。
5、进入mysql容器
可以看到根目录已经切换到容器的根目录
6、登录mysql
可以看到我们已经成功登录了,至此,docker安装mysql服务大功告成。
三、使用navacat连接mysql
开发中大多数都使用客户端工具连接mysql,常用的就是navicat,但是我们安装navicat以后,第一次连接mysql时通常会报下图中2059 - Authentication plugin 'caching_sha2_password' can't be loaded ...这个错误。
登录一下mysql看一下加密方式,可以看到mysql8的加密方式是新的caching_sha2_password
错误分析:
错误信息的意思是caching_sha2_password不能被加载,这是由于目前已有的客户端连接软件还不支持Mysql8新增加的加密方式caching_sha2_password,所以我们需要修改用户的加密方式,将其改为老的加密验证方式。
解决方案:
1、修改localhost加密方式:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
但是这里的localhost对应本地,如果是远程访问 mysql的话,需要将localhost改成%。
2、修改远程连接加密方式,localhost改为%
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
再次连接,显示连接成功,就可以使用客户端工具来管理我们的数据库了。
本文主要讲了macos系统下,Docker配置镜像加速,docker安装mysql,以及使用navicat premium连接mysql,所有步骤都经过亲测,希望能给需要的朋友以帮助,如果有问题,欢迎留言讨论。
文章同步公众号:码之初,每天推送Java技术文章,期待您的关注!
原创不易,转载请注明出处,谢谢!
mac系统下docker安装配置mysql详细步骤的更多相关文章
- MAC系统下Sublime Text3 配置Python3详细教程
MAC系统下Sublime Text3 配置Python3详细教程(亲测有效) https://blog.csdn.net/weixin_41768008/article/details/798590 ...
- [转]MAC系统下Sublime Text3 配置Python3详细教程(亲测有效)
原文地址: https://blog.csdn.net/weixin_41768008/article/details/79859008?tdsourcetag=s_pctim_aiomsg 这段时间 ...
- docker安装配置gitlab详细过程
docker安装配置gitlab详细过程 获取镜像 1.方法一 1 docker pull beginor/gitlab-ce:11.0.1-ce.0 2.方法二如果服务器网路不好或者pull不下 ...
- mac系统下Eclipse + pydev配置python Interpreter
mac系统下Eclipse + pydev配置python Interpreter 之前都在windows下使用Eclipse + pydev 进行开发,未发现什么异常,最近对wxpy.itcha ...
- mac系统下ionic环境配置
本人是在mac环境下进行配置的: 下载nodejs:https://nodejs.org/download/ 并双击安装 Cordova and Ionic command-line tools 安装 ...
- 【云计算】ubuntu下docker安装配置指南
Docker Engine安装配置 以下描述仅Docker在Ubuntu Precise 12.04 (LTS).Ubuntu Trusty 14.04 (LTS).Ubuntu Wily 15.10 ...
- Linux系统下tomcat安装配置
Linux系统中Tomcat的安装配置. 前提JDK已经安装好. 安装 下载tomcatwget http://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.0 ...
- linux系统下jdk安装配置
1.有jdk包(linux版) 2.放到linux系统下 3.建议在usr下新建jdk目录之后将jdk文件放到该目录下 3.配置系统信息 /etc/profile 需要配置的信息如下:#set j ...
- 无线网卡在 MAC 系统下的安装与使用过程
MAC系统安装netgear无线网卡的方法: 1)去网件官网下载相应的驱动软件 2)单击页面左侧的“Version 1.0.0.0”进入下载页面如下图 3)选择对应您系统版本的驱动程序,按右键保存到计 ...
随机推荐
- fenby C语言 P20
循环停止 break 立刻跳出不再循环 continue立刻跳出循环从下一次循环继续执行 #include <stdio.h> int main(){ int i; for(i=1;i&l ...
- Tomcat项目部署
一 之前一直是在ecplise 利用tomcat插件的形式启动项目,这里可以通过选择server.xml和context files两种方式这里选择这两者方式,都是会在tomcat/bin下产生对应的 ...
- 【原创】go语言学习(二十一)Select和线程安全
目录 select语义介绍和使用 线程安全介绍 互斥锁介绍和实战 读写锁介绍和实战 原子操作介绍 select语义介绍和使用 1.多channel场景 A. 多个channel同时需要读取或写入,怎么 ...
- C函数库stdio.h概况
库变量 size_t 这是无符号整数类型,它是 sizeof 关键字的结果. FILE 这是一个适合存储文件流信息的对象类型. fpos_t 这是一个适合存储文件中任何位置的对象类 ...
- 通过IDEA快速定位和排除依赖冲突
前言 我们程序员在开发的时候经常会遇到各种各样的 BUG 问题,其中大部分是业务逻辑异常,还有一些是代码书写不规范造成的异常例如:NullPointException(NPE),IndexOutOfB ...
- npm start 的应用 改为forever 后台启动的方法记录
记录日志的启动方式 forever start -l forever.log -o out.log -e err.log app.js 记录日志的启动方式 forever start -a app.j ...
- js解析json报错Unexpected token i in JSON at position 1
因为后台json是手动拼接的,在拼接时偷了懒,不想转义,所以就用了单引号,结果js解析时悲催了 这里记录一下,被解析的json字符串必须键值对都用双引号包起来,必须是双引号 默默罚抄一百遍
- html5自动横屏的方法
html5自动横屏的方法<pre>var evt = "onorientationchange" in window ? "orientationchange ...
- 013.Kubernetes二进制部署worker节点Nginx实现高可用
一 Nginx代理实现kube-apiserver高可用 1.1 Nginx实现高可用 基于 nginx 代理的 kube-apiserver 高可用方案. 控制节点的 kube-controller ...
- Laravel 5 - 文件上传
一.简介 Laravel 有很棒的文件系统抽象层,是基于 Frank de Jonge 的 Flysystem 扩展包. Laravel 集成的 Flysystem 提供了简单的接口,可以操作本地端空 ...