首页主机资讯CentOS下SQL Server的数据库恢复方法

CentOS下SQL Server的数据库恢复方法

时间2025-10-01 09:31:03发布访客分类主机资讯浏览587
导读:CentOS下SQL Server数据库恢复方法 一、准备工作 确认备份文件:确保拥有最新的数据库备份文件(通常为.bak格式,事务日志备份为.trn格式),且备份文件未被损坏。 停止SQL Server服务:恢复前需停止服务以避免文件占...

CentOS下SQL Server数据库恢复方法

一、准备工作

  1. 确认备份文件:确保拥有最新的数据库备份文件(通常为.bak格式,事务日志备份为.trn格式),且备份文件未被损坏。
  2. 停止SQL Server服务:恢复前需停止服务以避免文件占用,执行命令:sudo systemctl stop mssql-server
  3. 复制备份文件:将备份文件复制到SQL Server实例的数据目录(默认路径为/var/opt/mssql/data/)或其他可访问目录。
  4. 启动SQL Server服务:恢复完成后启动服务,命令:sudo systemctl start mssql-server

二、使用SQL Server Management Studio (SSMS) 恢复

  1. 连接实例:打开SSMS,输入CentOS服务器的IP地址、端口(默认1433)及SA账户密码,连接到SQL Server实例。
  2. 启动恢复向导:在对象资源管理器中展开“数据库”节点,右键点击“数据库”,选择“任务”→“还原”→“数据库”。
  3. 配置恢复选项
    • 选择“设备”,点击“浏览”定位备份文件;
    • 在“常规”页面确认数据库名称,选择“覆盖现有数据库”;
    • 切换至“选项”页面,勾选“WITH RECOVERY”(默认)以恢复数据库至可用状态,若需后续应用事务日志则选“WITH NORECOVERY”。
  4. 执行恢复:点击“确定”开始恢复,完成后刷新数据库列表验证状态。

三、使用T-SQL命令恢复

  1. 进入命令行工具:使用sqlcmd连接到SQL Server实例,命令:sqlcmd -S localhost -U sa -P your_password
  2. 执行恢复命令
    • 完整备份恢复RESTORE DATABASE [数据库名称] FROM DISK '/备份文件路径/备份文件名.bak' WITH REPLACE, RECOVERY; REPLACE用于覆盖现有数据库,RECOVERY恢复至可用状态)。
    • 差异备份恢复(需先恢复完整备份):RESTORE DATABASE [数据库名称] FROM DISK '/备份文件路径/差异备份文件名.bak' WITH NORECOVERY; NORECOVERY保留数据库为恢复状态,等待事务日志)。
    • 事务日志恢复(需先恢复完整备份和差异备份):RESTORE LOG [数据库名称] FROM DISK '/备份文件路径/事务日志文件名.trn' WITH RECOVERY; RECOVERY完成恢复流程)。
  3. 退出命令行:输入QUIT退出sqlcmd

四、使用mssql-tools恢复

  1. 安装mssql-tools:通过yum安装命令行工具,命令:sudo yum install -y mssql-tools
  2. 连接实例并恢复:使用sqlcmd执行T-SQL恢复命令(步骤同“使用T-SQL命令恢复”),例如:RESTORE DATABASE [YourDB] FROM DISK '/backups/YourDB.bak' WITH REPLACE, RECOVERY;

五、恢复后检查与修复

  1. 验证数据库状态:通过SSMS或sqlcmd执行SELECT name, state_desc FROM sys.databases WHERE name = '数据库名称'; ,确认state_desc为“ONLINE”。
  2. 检查数据完整性:执行DBCC CHECKDB([数据库名称]) WITH NO_INFOMSGS, ALL_ERRORMSGS; ,修复错误(若有):DBCC CHECKDB([数据库名称], REPAIR_ALLOW_DATA_LOSS); (谨慎使用,可能导致数据丢失)。
  3. 重建索引与更新统计信息:优化数据库性能,例如:EXEC sp_MSforeachtable @command1="ALTER INDEX ALL ON ? REBUILD"; (重建所有表索引),UPDATE STATISTICS [数据库名称].[架构名].[表名]; (更新指定表统计信息)。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: CentOS下SQL Server的数据库恢复方法
本文地址: https://pptw.com/jishu/715535.html
如何配置CentOS HDFS权限 CentOS HDFS安全性如何配置

游客 回复需填写必要信息