【Mysql】Docker下Mysql8数据备份与恢复
# 创建一个Docker容器来运行Mysql 8数据库
docker run --name mysql8-container -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:8
# 等待数据库启动
sleep 10
# 创建一个数据库和表
docker exec -i mysql8-container mysql -u root -pmy-secret-pw <<EOF
CREATE DATABASE mydb;
USE mydb;
CREATE TABLE mytable (id INT PRIMARY KEY, value VARCHAR(255));
INSERT INTO mytable (id, value) VALUES (1, 'Hello'), (2, 'World');
EOF
# 备份数据库到宿主机
docker exec mysql8-container sh -c 'mysqldump -u root -p"$MYSQL_ROOT_PASSWORD" mydb' > /path/to/backup.sql
# 停止并删除当前容器
docker stop mysql8-container
docker rm mysql8-container
# 恢复数据库
docker run --name mysql8-restored-container -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:8
sleep 10
docker exec -i mysql8-restored-container mysql -u root -pmy-secret-pw < /path/to/backup.sql
这个例子展示了如何在Docker环境中创建一个Mysql 8容器,创建一个数据库和表,对数据库进行备份,停止并删除原有容器,然后使用备份来恢复数据库。这个过程是数据库管理和容器化技术的一个实际例子。
评论已关闭