You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.1 KiB
48 lines
1.1 KiB
|
3 weeks ago
|
#!/bin/bash
|
||
|
|
# ============================================
|
||
|
|
# RuoYi-Vue 数据库回滚脚本
|
||
|
|
# 使用方式: ./06_rollback.sh <backup_file>
|
||
|
|
# ============================================
|
||
|
|
|
||
|
|
if [ -z "$1" ]; then
|
||
|
|
echo "用法: ./06_rollback.sh <backup_file>"
|
||
|
|
echo "示例: ./06_rollback.sh ./backup/backup_20260628_120000.sql"
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
BACKUP_FILE=$1
|
||
|
|
|
||
|
|
if [ ! -f "$BACKUP_FILE" ]; then
|
||
|
|
echo "✗ 备份文件不存在: $BACKUP_FILE"
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
DB_HOST="localhost"
|
||
|
|
DB_PORT="3306"
|
||
|
|
DB_USER="root"
|
||
|
|
DB_PASS="password"
|
||
|
|
DB_NAME="ry-vue"
|
||
|
|
|
||
|
|
echo "========================================"
|
||
|
|
echo "RuoYi-Vue 数据库回滚"
|
||
|
|
echo "备份文件: $BACKUP_FILE"
|
||
|
|
echo "========================================"
|
||
|
|
|
||
|
|
# 确认回滚
|
||
|
|
read -p "确认回滚?这将覆盖当前数据库 (yes/no): " confirm
|
||
|
|
if [ "$confirm" != "yes" ]; then
|
||
|
|
echo "回滚已取消"
|
||
|
|
exit 0
|
||
|
|
fi
|
||
|
|
|
||
|
|
# 执行回滚
|
||
|
|
echo "正在回滚..."
|
||
|
|
mysql -h$DB_HOST -P$DB_PORT -u$DB_USER -p$DB_PASS $DB_NAME < "$BACKUP_FILE"
|
||
|
|
|
||
|
|
if [ $? -eq 0 ]; then
|
||
|
|
echo "✓ 回滚成功"
|
||
|
|
else
|
||
|
|
echo "✗ 回滚失败"
|
||
|
|
exit 1
|
||
|
|
fi
|