一、准备工作 在进行数据恢复前,需完成以下关键步骤:
sudo systemctl stop mssql-server
;/var/opt/mssql/backup/
)。二、使用SQL Server Management Studio (SSMS) 恢复
三、使用T-SQL命令恢复
sudo /opt/mssql/bin/sqlservr -m
;sqlcmd
工具连接,命令示例:sqlcmd -S localhost -U sa -P your_password
;RESTORE DATABASE [数据库名称]
FROM DISK '/备份文件路径/备份文件名.bak'
WITH REPLACE, RECOVERY;
RESTORE LOG [数据库名称] FROM DISK '/备份文件路径/日志文件名.trn' WITH RECOVERY;
;QUIT
退出sqlcmd
,启动SQL Server服务:sudo systemctl start mssql-server
。四、使用mssql-tools恢复(命令行工具)
sudo yum install -y mssql-tools
;sqlcmd
连接后,直接运行T-SQL恢复命令(同第三步),或通过脚本自动化恢复流程。五、事务日志恢复(精确恢复点) 若需恢复至特定时间点(如误删除数据前),需结合完整备份+事务日志备份:
WITH NORECOVERY
选项,保留日志链;WITH RECOVERY
使数据库可用。-- 恢复完整备份
RESTORE DATABASE [数据库名称]
FROM DISK '/备份路径/完整备份.bak'
WITH NORECOVERY;
-- 恢复事务日志(至指定时间点)
RESTORE LOG [数据库名称]
FROM DISK '/备份路径/日志备份.trn'
WITH STOPAT = '2025-10-01 12:00:00', RECOVERY;
六、灾难恢复与数据库镜像
ALTER DATABASE [数据库名称] SET PARTNER FAILOVER;
,快速恢复服务;七、恢复后验证与修复
DBCC CHECKDB [数据库名称]
命令,检测数据库逻辑和物理一致性;