从仓库下载镜像
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. Hadoop HBase概念学习系列之HBase里的时间戳(二十六)

    HBase集群要求每个节点的时间必须同步.HBase对于节点的时间扭曲(time skew)容忍度很低(这和HDFS是不一样的). 这主要是因为HBase需要使用系统时间来产生时间戳.如果系统时间不同 ...

  2. October 03rd 2017 Week 40th Tuesday

    Don't make promises you can't keep. But those are the best kind. 不要许下做不到的承诺,但是我们做不到的承诺往往是最好的. The be ...

  3. Inter-System Differencing between GPS and BDS for Medium-Baseline RTK Positioning-12-18

    顾及系统间偏差的双系统中长基线RTK定位 主要适用于:严峻地区,比如城市峡谷和被高大树木遮挡. 伪距码系统间偏差可以通过先验标定进行改正或者参数化.已知先验载波系统间偏差,那么两个系统重叠频率的模糊度 ...

  4. openssl生成证书

    数字证书: 第三方机构使用一种安全的方式把公钥分发出去 证书格式:x509,pkcs家族 x509格式: 公钥和有效期限: 持有者的个人合法身份信息:(主机名,域名) 证书的使用方式 CA的信息 CA ...

  5. Centos7配置samba

    Centos7配置samba 1.安装 yum install samba samba-client samba-common -y 2.配置 备份已有配置mv /etc/samba/smb.conf ...

  6. python range函数与numpy arange函数,xrange与range的区别

    转自:https://www.cnblogs.com/ymjyqsx/p/6426764.html 1.range()返回的是range object,而np.arange()返回的是numpy.nd ...

  7. 初识Qt布局管理器

    Qt布局管理器的类有4种,它们分别为QHBoxLayout.QVBoxLayout.QGridLayout和QStackLayout.其中,QHBoxLayout实现水平布局,QVBoxLayout实 ...

  8. python3 mock

    mock的官网学习备忘录:官网地址https://docs.python.org/3/library/unittest.mock.html#quick-guide 1,安装 python3 unitt ...

  9. linux 安装git环境变量配置

    cd /usr/local mkdir git 源码安装 cd git yum install curl-devel expat-devel gettext-devel openssl-devel z ...

  10. java学习笔记-基础篇

    Java基础篇 1—12 常识 13 this关键字 14参数传递 16 继承 17 访问权限 28—31异常 1—12 常识 1.文件夹以列表展示,显示扩展名,在地址栏显示全路径 2.javac编译 ...