1.查找镜像:

 docker search mysql

也可以去官网查看镜像tag,选择自己需要的版本,否则会下载最新版本:https://hub.docker.com/_/mysql/

2.下载镜像(如上一步,可以指定想要的版本,不指定则为最新版):

docker pull mysql

3.通过镜像创建容器并运行:

mkdir -p /usr/local/docker-mysql/conf
mkdir -p /usr/local/docker-mysql/conf.d
mkdir -p /usr/local/docker-mysql/logs
mkdir -p /usr/local/docker-mysql/data


docker run -p 3306:3306 --name mymysql -v /usr/local/docker-mysql/conf:/etc/mysql/conf.d -v /usr/local/docker-mysql/logs:/logs -v /usr/local/docker-mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql
  • -p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。

  • -v -v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。

  • -v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。

  • -v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。

  • -e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。

此时,用navicat for mysql连接mysql发现报错:Client does not support authentication protocol requested  by server。。。

解决方案:

进入容器:

docker exec -it 62349aa31687 /bin/bash

进入mysql:

mysql -uroot -p
mysql>grant all privileges on *.*  to  'root'@'%'  identified by 'root'  with grant option;
mysql>flush privileges;
 
如果是mysql8 
https://www.cnblogs.com/brady-wang/p/11561300.html 这里授权

docker启动服务---------------mysql的更多相关文章

  1. docker启动服务

    1 rabbitmq docker启动服务---------------rabbitmq 2 mysql docker启动服务---------------mysql 3 redis docker启动 ...

  2. 【jvm】java查看内存使用jmap,jstat和jstack使用 ,docker启动服务下查看jvm使用情况

    [声明,如果是docker启动的服务,可以在进入容器内后,再使用如下命令操作] [docker exec -it 容器ID  /bin/bash     即可进入容器内] [如果不是docker启动的 ...

  3. ubuntu 16.04 jenkins pipline的实现 最终docker启动服务

    准备工作:两台虚拟机A:192.168.1.60 B:192.168.1.61 C:一个存放代码的代码库(github)A:jenkins git docker openssh-server(ssh) ...

  4. mysql悬案 之 为什么用docker启动的mysql配置文件不生效

    文章目录 故事前景 查看docker启动时挂载了哪些目录 使用相同镜像启动一个mysql 新建一个目录用来存放容器内的mysql配置文件 复制容器内的mysql配置文件到本地 查看mysql配置文件目 ...

  5. docker启动服务---------------rabbitmq

    1.进入docker hub镜像仓库地址:https://hub.docker.com/ 2.搜索rabbitMq,进入官方的镜像,可以看到以下几种类型的镜像:我们选择带有"mangemen ...

  6. docker启动服务---------------elasticsearch

      一 环境 vbox5.2.8 centos7     docker 19.03.1 elasticsearch 7.9.1 二 进入centos7启动dcoker systemctl start ...

  7. 本机连接虚拟机中docker启动的mysql数据库

    首先要保证本机能访问虚拟机的网络 并且虚拟机开通了mysql的访问端口 进入容器 docker exec -it 容器id /bin/bash 进入mysql数据库开启远程访问权限 mysql -ur ...

  8. docker启动服务---------------redis

    1. docker拉取镜像 docker pull redis 2 建立配置目录和准备配置文件 mkdir -p /usr/local/docker-redis && cd /usr/ ...

  9. php连接docker启动的mysql容器报错:(HY000/2002): Connection refused的解决办法

    vim libraries/config.default.php 查找到localhost/127.0.0.1字符[一般来说默认都是localhost] :/localhost 替换成容器名,例如我定 ...

随机推荐

  1. seajs1.3.0源码解析之module依赖有序加载

    /** * The core of loader */ ;(function(seajs, util, config) { // 模块缓存 var cachedModules = {} // 接口修改 ...

  2. npm 报错 cb.apply is not a function

    解决方法1 目录C:\Users(your username)\AppData\Roaming 有个npm文件夹 删除如果没有 npm cache文件cmd下运行 npm clean cache —f ...

  3. SpringMVC-09-Ajax技术

    9. Ajax技术 简介 AJAX=Asynchronous JavaScript and XML (异步的JavaScript和XML) AJAX是一种在无需重新加载整个网页的情况下,能够更新部分网 ...

  4. shell进行微信报警的简单应用

    一.企业微信注册地址: https://work.weixin.qq.com/?from=openApi二.请求格式 1.获取token的方法 curl -s 'https://qyapi.weixi ...

  5. [LeetCode]547. 朋友圈(DFS)

    题目 班上有 N 名学生.其中有些人是朋友,有些则不是.他们的友谊具有是传递性.如果已知 A 是 B 的朋友,B 是 C 的朋友,那么我们可以认为 A 也是 C 的朋友.所谓的朋友圈,是指所有朋友的集 ...

  6. JVM内存结构和Java内存模型

    一.JVM 首先看一张JVM结构图(某度找的) 主要看运行时数据区,里边有方法区,堆,java虚拟机栈,本地方法栈,程序计数器.其中方法区和堆是线程共享的,也是JVM进行垃圾收集的区域,java虚拟机 ...

  7. vue中axios的使用

    新开了一个vue项目,从头到尾都是一个人做的,所以就自己配置了一个axios.js文件 第一种方法.使用axios 需要下载安装   npm install axios,下载完成之后 在main.js ...

  8. Mac鼠标灵敏度调节

    系统的调节到最大还是无法满足你的时候那么你就该看看我接下来的操作了,请看: 查看 首先打开终端,输入一下命令: defaults read -g com.apple.mouse.scaling 此命令 ...

  9. 《Java从入门到失业》第四章:类和对象(4.6):类路径

    4.6类路径 4.6.1什么是类路径 前面我们讨论过包,知道字节码文件最终都会被放到和包名相匹配的树状结构子目录中.例如上一节的例子: 其实类还有一种存放方式,就是可以归档到一个jar文件中,jar文 ...

  10. Redis报错“ OOM command not allowed when used memory > 'maxmemory' ”

    生产环境上遇到这个问题,控制台不停打印 "OOM command not allowed when used memory > 'maxmemory' "; 起初不知道是什么 ...