从仓库下载镜像
sudo docker pull mysql:5.7
 
创建容器
docker run --name="mysql" \
-p 3306:3306 \
-v /Users/zhangsan/docker/mysql/data:/var/lib/mysql \
-v /Users/zhangsan/docker/mysql/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7
备注:
--name="mysql" 给容器取名mysql -p 3306:3306 将容器内端口3306映射到宿主机端口3306上,前宿主机:后容器 -v /Users/zhangsan/docker/mysql/data:/var/lib/mysql 将宿主机目录/Users/zhangsan/docker/mysql/data挂载到容器目录/var/lib/mysql,将数据保存到宿主机目录方便查看。/var/lib/mysql容器目录为mysql默认的数据存储目录。 -d 后台运行容器,并返回容器ID -v /Users/zhangsan/docker/mysql/conf.d:/etc/mysql/conf.d 如果需要自定义的参数,可以新建一个config-file.cnf文件,将参数配置到里面放到宿主机某一个目录,并将该目录挂载到容器的/etc/msyql/conf.d目录中,mysql启动的时候回读取覆盖默认配置 -e MYSQL_ROOT_PASSWORD=123456 设置root密码 -d 后台运行容器,并返回容器ID
 
备份数据
docker exec mysql sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > ~/docker/mysql/backup/all-databases.sql

备注:
~/docker/mysql/backup/all-databases.sql 这个是宿主机的全路径
 
进入mysql容器内
docker exec -it mysql bash

备注:
通过该命令,命令行就会进入容器内部系统,后面就可以像操作普通linux系统一样操作容器系统了
 
通过上述镜像可以链接其他mysql服务
docker run -it --rm mysql mysql -h'192.168.0.10' -P 10050 -u'root' -p'123456'
 
关于msyql8.0.4以上密码加密方式改变
default-authentication-plugin 的值由 mysql_native_password 变为了caching_sha2_password

新的加密方式原来的Navicat客户端连接不上,可通过修改用户密码为老的加密方式,或者将加密方式改为老的加密方式
1、修改用户密码,新建用户的时候也是用老的加密方式:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
CREATE USER test IDENTIFIED WITH mysql_native_password BY '123456'; 2、修改加密方式,在配置文件中覆盖配置项
default-authentication-plugin=mysql_native_password
查看mysql所有的可配置项及其默认值
docker run -it --rm mysql --verbose --help
 
 
 

Docker部署MySQL容器的更多相关文章

  1. docker 部署mysql tomcat时 在root@localhost~下——-——docker exec -it 容器名 /bin/bash 报错

    在docker部署mysql时 报错 找不到 容器不自动启动  , docker start 容器名  也没有效果 多次尝试发现 原因是创建容器时在 下面创建的 更改为下创建 问题解决

  2. Docker 部署mysql

    目录 Docker 部署mysql 步骤 1.查找 Docker Hub 上的 MySQL 镜像 2.docker pull mysql 拉取镜像 3.运行容器 4.查看容器启动情况 使用命令备注 D ...

  3. docker(部署常见应用):docker部署mysql

    上节回顾:docker(部署常见应用):docker部署nginx docker部署mysql:5.7.26 # 下载镜像 docker pull mysql: # 查看镜像 docker image ...

  4. docker部署mysql Navicat远程连接

    docker部署mysql Navicat远程连接 docker search mysql   查看mysql镜像(是去dockerHub网站搜素镜像,遇到问题可以去该网站查看官方文档,纯英文文档估计 ...

  5. Docker:Docker部署mysql数据库

    docker部署mysql : 8.0 1.在宿主机创建mysql挂载目录 #创建目录 mkdir /home/mysql/conf mkdir /home/mysql/logs mkdir /hom ...

  6. springboot多数据源配合docker部署mysql主从实现读写分离

    本篇主要有两部分: 1.使用docker部署mysql主从 实现主从复制 2.springboot项目多数据源配置,实现读写分离 一.使用docker部署mysql主从 实现主从复制 此次使用的是wi ...

  7. Docker部署mysql 5.7

    Docker部署mysql 5.7 准备工作 在CentOS或者Linux创建部署目录,用于存放容器的配置和MySQL数据:目的是当重装或者升级容器时,配置文件和数据不会丢失.执行以下命令: a.创建 ...

  8. Centos7借助docker部署mysql,提供远程链接服务

    Centos7 借助docker部署mysql,并提供远程连接服务 安装docker 运行docker 注意安装docker和运行docker的步骤很简单,可以参考我学习docker的笔记 docke ...

  9. docker部署mysql

    1. 下载 [root@localhost my.Shells]# ./dockerStart.sh start or stop start Redirecting to /bin/systemctl ...

随机推荐

  1. [CSS]关于z-index与position的一次奇异经历

    前言: 前不久,同事S遇到了一个关于position和z-index的问题. 他折腾了一天没搞定,群发了邮件寻求帮助, 我一开始以为很简单,就主动说帮忙,简单尝试之后,才发现貌似没那么简单. 问题主要 ...

  2. Hadoop HA on Yarn——集群启动

    这里分两部分,第一部分是NameNode HA,第二部分是ResourceManager HA (ResourceManager HA是hadoop-2.4.1之后加上的) NameNode HA 1 ...

  3. springmvc入门之HelloWorld篇

    springmvc是一个基于spring的mvc框架,各种优点啥的用过就知道了.下面开始讲HelloWorldController的实现. 1.开发环境搭建<导jar包+配置文件> 1.1 ...

  4. 在myeclipse的工作环境上配置默认编码为UTF-8

        将默认环境转为UTF-8,看图分析: 在windows->Preferences上 这样整个环境就变成UTF-8,只是这样还不够, 还须要,假设你须要所有文件都设为UTF-8,就: wa ...

  5. 编译Console程序时,可以指定Main入口函数

    有如下简单的console程序 using System; namespace HelloWorld { class Program { static void Main(string[] args) ...

  6. --provider=docker时出现的问题

    Vagrantfile类似: Vagrant.configure(") do |config| config.vm.box = "hashicorp/precise64" ...

  7. Spring事务(三)事务增强器

    摘要: 本文结合<Spring源码深度解析>来分析Spring 5.0.6版本的源代码.若有描述错误之处,欢迎指正. 目录 一.创建事务 1. 获取事务 2. 处理已经存在的事务 3. 准 ...

  8. 让自己的项目支持 Carthage

    据说 cocoaPods 升级到1.0之后变得使用起来不太方便了,好吧,这段时间公司事儿比较多而且是自己写的sdk就不怎么写demo了,cocoaPods也没用几次…… 前两天朋友说要转战 Carth ...

  9. P1736 创意吃鱼法

    题目描述 回到家中的猫猫把三桶鱼全部转移到了她那长方形大池子中,然后开始思考:到底要以何种方法吃鱼呢(猫猫就是这么可爱,吃鱼也要想好吃法 ^_*).她发现,把大池子视为01矩阵(0表示对应位置无鱼,1 ...

  10. cloudstack 添加新网卡使其能上网

    由于虚拟机使用了默认的网络套餐,是不能上网的.现在的需求是使其能上网. 操作步骤: 1.添加一个在能上网的网络里的网卡,使其成为默认网卡 2.复制网卡配置文件,修改网卡名称等,重启network(可能 ...