#!/usr/bin/env python3 import argparse from pathlib import Path from app.backup_service import restore_backup from app.config import settings parser = argparse.ArgumentParser(description="在停机维护窗口恢复数据库备份") parser.add_argument("filename", help="backups 目录内的备份文件名") parser.add_argument("--confirm", action="store_true", help="确认覆盖当前数据库") args = parser.parse_args() if not args.confirm: parser.error("恢复会覆盖当前数据库,请停机后添加 --confirm") path = settings.backup_dir / Path(args.filename).name if not path.exists(): parser.error(f"备份不存在:{path}") restore_backup(path) print(f"restored={path}")