操作日志
This commit is contained in:
@@ -1,19 +1,19 @@
|
||||
#!/bin/bash
|
||||
# MySQL 数据卷迁移脚本
|
||||
# 将旧自动命名卷的数据复制到 external 卷 changzhou_mysql_data
|
||||
# 将旧自动命名卷的数据复制到 external 卷 henan_mysql_data
|
||||
# 用法:bash migrate-mysql-volume.sh [旧卷名]
|
||||
# 不传参数时自动检测 docker_changzhou_mysql_data 和 docker-cn_changzhou_mysql_data
|
||||
# 不传参数时自动检测 docker_henan_mysql_data 和 docker-cn_henan_mysql_data
|
||||
|
||||
set -e
|
||||
|
||||
NEW_VOL="changzhou_mysql_data"
|
||||
NEW_VOL="henan_mysql_data"
|
||||
IMAGE="mysql:8.0.24"
|
||||
|
||||
# 自动检测旧卷名
|
||||
if [ -n "$1" ]; then
|
||||
OLD_VOL="$1"
|
||||
else
|
||||
for candidate in docker_changzhou_mysql_data docker-cn_changzhou_mysql_data; do
|
||||
for candidate in docker_henan_mysql_data docker-cn_henan_mysql_data; do
|
||||
if docker volume inspect "$candidate" >/dev/null 2>&1; then
|
||||
OLD_VOL="$candidate"
|
||||
break
|
||||
@@ -39,9 +39,9 @@ OLD_SIZE=$(docker run --rm -v "${OLD_VOL}:/data" "$IMAGE" sh -c "du -sh /data" 2
|
||||
echo "旧卷 $OLD_VOL 数据量: $OLD_SIZE"
|
||||
|
||||
# 停掉 MySQL 容器(如果在运行)
|
||||
if docker inspect mysql_db >/dev/null 2>&1; then
|
||||
if docker inspect henan_mysql_db >/dev/null 2>&1; then
|
||||
echo "停止 MySQL 容器..."
|
||||
docker stop mysql_db 2>/dev/null || true
|
||||
docker stop henan_mysql_db 2>/dev/null || true
|
||||
fi
|
||||
|
||||
# 清空新卷(避免数据叠加)
|
||||
|
||||
Reference in New Issue
Block a user