6. Docker上安装Mysql5.7与数据备份

1. docker search mysql 查找mysql

 

2. docker pull mysql:5.7 拉取mysql5.7

 

3. docker run -p 3308:3306 --name mysql -v /opt/my/mysql/conf:/etc/mysql/conf.d -v /opt/my/mysql/logs:/logs -v /opt/my/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

 

4. 进入docker里的mysql  docker exec -it e93384fba39d /bin/bash

登录进入mysql数据库  mysql -u root -p

 

到这里已经完成!!

 

另外在宿主机上对docker里的mysql做数据备份

现在创建一条数据做测试:

docker exec e93384fba39d sh -c ' exec mysqldump my -uroot -p"123456" ' > /opt/my/mysql/backup/20191009.sql

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker环境下,可以使用定时任务和脚本来实现MySQL 5.7的自动备份。以下是一个示例: 1. 创建一个名为`backup.sh`的备份脚本,并将其保存在Docker容器中的任意位置,例如`/backup/backup.sh`。 ```shell #!/bin/bash # 备份文件保存路径 BACKUP_DIR="/backup" # MySQL连接信息 MYSQL_HOST="mysql" MYSQL_PORT="3306" MYSQL_USER="root" MYSQL_PASSWORD="password" MYSQL_DATABASE="database" # 备份文件名 BACKUP_FILE="${BACKUP_DIR}/backup_$(date +%Y%m%d%H%M%S).sql" # 执行备份命令 mysqldump -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USER} -p${MYSQL_PASSWORD} ${MYSQL_DATABASE} > ${BACKUP_FILE} ``` 2. 在Dockerfile中添加以下内容,以将备份脚本复制到Docker容器中。 ```dockerfile COPY backup.sh /backup/backup.sh RUN chmod +x /backup/backup.sh ``` 3. 构建并运行MySQL 5.7的Docker容器。 ```shell docker build -t mysql57 . docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password mysql57 ``` 4. 创建一个名为`crontab.txt`的定时任务文件,并将其保存在Docker容器中的任意位置,例如`/backup/crontab.txt`。 ```shell # 每天凌晨3点执行备份任务 0 3 * * * /backup/backup.sh ``` 5. 在Dockerfile中添加以下内容,以将定时任务文件复制到Docker容器中,并安装cron。 ```dockerfile COPY crontab.txt /backup/crontab.txt RUN crontab /backup/crontab.txt RUN apt-get update && apt-get -y install cron ``` 6. 重新构建并运行MySQL 5.7的Docker容器。 ```shell docker build -t mysql57 . docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password mysql57 ``` 现在,MySQL 5.7的Docker容器将在每天凌晨3点自动执行备份任务,并将备份文件保存在容器中的`/backup`目录下。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值