docker mysql复制

1、应用场景

可以将生产环境的数据库数据导到测试环境。

2、安装mysql

2.1 查找mysql镜像

>docker search mysql
INDEX       NAME                                                             DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
docker.io   docker.io/mysql                                                  MySQL is a widely used, open-source relati...   7915      [OK]       
docker.io   docker.io/mariadb                                                MariaDB is a community-developed fork of M...   2641      [OK]       
docker.io   docker.io/mysql/mysql-server                                     Optimized MySQL Server Docker images. Crea...   597                  [OK]
docker.io   docker.io/percona                                                Percona Server is a fork of the MySQL rela...   420       [OK]       
docker.io   docker.io/zabbix/zabbix-server-mysql                             Zabbix Server with MySQL database support       174                  [OK]
docker.io   docker.io/hypriot/rpi-mysql                                      RPi-compatible Docker Image with Mysql          111                  
docker.io   docker.io/zabbix/zabbix-web-nginx-mysql                          Zabbix frontend based on Nginx web-server ...   91                   [OK]
docker.io   docker.io/centurylink/mysql                                      Image containing mysql. Optimized to be li...   60                   [OK]
docker.io   docker.io/1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5   ubuntu-16-nginx-php-phpmyadmin-mysql-5          49                   [OK]
docker.io   docker.io/centos/mysql-57-centos7                                MySQL 5.7 SQL database server                   48                   
docker.io   docker.io/mysql/mysql-cluster                                    Experimental MySQL Cluster Docker images. ...   41                   
docker.io   docker.io/tutum/mysql                                            Base docker image to run a MySQL database ...   31                   
docker.io   docker.io/bitnami/mysql                                          Bitnami MySQL Docker Image                      25                   [OK]
docker.io   docker.io/schickling/mysql-backup-s3                             Backup MySQL to S3 (supports periodic back...   25                   [OK]
docker.io   docker.io/zabbix/zabbix-web-apache-mysql                         Zabbix frontend based on Apache web-server...   24                   [OK]
docker.io   docker.io/linuxserver/mysql                                      A Mysql container, brought to you by Linux...   20                   
docker.io   docker.io/zabbix/zabbix-proxy-mysql                              Zabbix proxy with MySQL database support        20                   [OK]
docker.io   docker.io/centos/mysql-56-centos7                                MySQL 5.6 SQL database server                   13                   
docker.io   docker.io/circleci/mysql                                         MySQL is a widely used, open-source relati...   11                   
docker.io   docker.io/mysql/mysql-router                                     MySQL Router provides transparent routing ...   8                    
docker.io   docker.io/openshift/mysql-55-centos7                             DEPRECATED: A Centos7 based MySQL v5.5 ima...   6                    
docker.io   docker.io/jelastic/mysql                                         An image of the MySQL database server main...   1                    
docker.io   docker.io/ansibleplaybookbundle/mysql-apb                        An APB which deploys RHSCL MySQL                0                    [OK]
docker.io   docker.io/cloudposse/mysql                                       Improved `mysql` service with support for ...   0                    [OK]
docker.io   docker.io/widdpim/mysql-client                                   Dockerized MySQL Client (5.7) including Cu...   0                    [OK]

2.2 拉取mysql5.7镜像

>docker pull mysql:5.7

2.3 查看本地镜像列表

>docker images |grep mysql
docker.io/mysql                                          5.7                 ee7cbd482336        10 days ago         372.1 MB

3、启动mysql

>docker run -p 13306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
  • -p 13306:3306:将容器的 3306 端口映射到主机的 13306 端口。
  • -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 用户的密码。

$PWD/data中会存入数据库中的数据。

4、数据复制到测试环境

将第3步中的data文件夹复制到测试服务器,在当前目录启动mysql。

>docker run -p 13306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

5、其他

5.1 停止mysql

>docker ps #查询容器id
86e4f747393d        mymysql:5.7.3                              "docker-entrypoint.sh"   32 minutes ago      Up 32 minutes       33060/tcp, 0.0.0.0:13306->3306/tcp   mymysql
>docker stop 86e4f747393d #停止
>docker rm 86e4f747393d #删除
>docker run -p 13306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 #启动

5.2 删除镜像

>docker images #查找本地镜像
mymysql                                                  5.7.1               5858ac4f6191        About an hour ago   372.1 MB
>docker rmi 5858ac4f6191 #删除镜像

注意:先删除容器,才能删除镜像。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值