docker 中 mysql 备份及恢复
备份所有数据
1 | docker exec some-mysql sh -c 'exec mysqldump --all-databases -u root -p "$MYSQL_ROOT_PASSWORD"' > /some/path/all-databases.sql |
恢复所有数据库
1 | docker exec -i some-mysql sh -c 'exec mysql -u root -p "$MYSQL_ROOT_PASSWORD"' < /some/path/all-databases.sql |
备份指定数据库
1 | docker exec some-mysql sh -c 'exec mysqldump --databases db1 -u root -p "$MYSQL_ROOT_PASSWORD"' > /some/path/db1-backup.sql |
恢复指定数据库
1 | docker exec -i some-mysql sh -c 'exec mysql -u root -p "$MYSQL_ROOT_PASSWORD"' < /some/path/db1-backup.sql |