Docker MySql 数据备份、恢复

docker-compose.yaml实例

version: '3.8'
services:
  db:
    image: mysql:9.0.1
    environment:
      MYSQL_ROOT_PASSWORD: 123456
      MYSQL_DATABASE: data
      MYSQL_USER: data
      MYSQL_PASSWORD: 123456
      MYSQL_ROOT_HOST: '%'

 1、备份


docker exec -it <容器名称> /usr/bin/mysqldump -u root -p123456 --all-databases > all_databases_backup.sql

2、恢复 

docker exec -i <容器名称> /usr/bin/mysql -u root -p123456 < all_databases_backup.sql

问题:

1、powershell  “<”运算符是为将来使用而保留的。

Get-Content all_databases_backup.sql | docker exec -i negozio_server-db-1 /usr/bin/mysql -u root -p123456

2、密码错误问题

添加:command: --skip-grant-tables 安全模式启动

3、System.OutOfMemoryException

先复制到容器再恢复

docker cp all_databases_backup.sql <容器名称>:/all_databases_backup.sql

docker exec -it <容器名称> /bin/bash

/usr/bin/mysql -u root -p123456 < all_databases_backup.sql

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值