温馨提示×

SQL Server在Debian上的备份与恢复实践

小樊
36
2025-08-09 15:42:48
栏目: 云计算

备份实践

  1. 安装配置

    • 通过Microsoft官方APT仓库安装SQL Server,需先导入GPG密钥并添加仓库源。
    • 启动服务并使用mssql-conf配置管理员密码。
  2. 备份类型与命令

    • 完整备份BACKUP DATABASE [数据库名] TO DISK = '/路径/备份.bak' WITH FORMAT
    • 差异备份BACKUP DATABASE [数据库名] TO DISK = '/路径/差异备份.bak' WITH DIFFERENTIAL
    • 事务日志备份BACKUP LOG [数据库名] TO DISK = '/路径/日志备份.bak' WITH NORECOVERY
  3. 自动化备份

    • 编写Shell脚本调用sqlcmd执行备份命令,并通过cron定时任务调度。
    • 示例脚本:创建备份目录、生成带时间戳的备份文件名并执行备份。
  4. 存储与验证

    • 将备份文件存储在本地磁盘、网络存储或云存储,避免单点故障。
    • 定期检查备份文件完整性,可通过RESTORE VERIFYONLY命令验证。

恢复实践

  1. 恢复完整备份

    • 停止SQL Server服务(如需覆盖文件),执行RESTORE DATABASE [数据库名] FROM DISK = '/路径/备份.bak' WITH REPLACE, RECOVERY
    • 启动服务后验证数据。
  2. 恢复差异/事务日志

    • 先恢复完整备份,再按顺序应用差异备份和事务日志:
      RESTORE DATABASE [数据库名] FROM DISK = '/路径/差异备份.bak' WITH RECOVERY
      RESTORE LOG [数据库名] FROM DISK = '/路径/日志备份.bak' WITH RECOVERY
  3. 工具与应急恢复

    • 使用SSMS图形界面选择备份文件恢复(支持覆盖或新建数据库)。
    • 数据库损坏时,可尝试DBCC CHECKDB修复或启用紧急模式恢复。

注意事项

  • 权限与路径:确保备份/恢复路径有足够权限,避免使用系统关键目录。
  • 版本兼容性:跨平台备份需确认SQL Server版本兼容性。
  • 测试恢复:定期在测试环境验证备份文件可恢复性,避免生产环境故障。

参考来源


0