sql server 还原之大总结

本文提供了详细的SQL数据库备份与还原步骤,包括查询备份文件的逻辑名、创建临时表存放逻辑文件信息、执行备份文件还原等关键操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近一直在忙数据库的还原,总是各种出错,不是找不到系统文件就是逻辑文件不对,很让人头疼,各种心酸只有自己知道,由于不人不擅长拐弯抹角,所以直接上解决步骤

一、查询备份文件的逻辑名:

 restore filelistonly from disk='F:\hh.bak'

二、如何取备份文件的逻辑文件名,个人觉得可以直接用临时表,表中的字段从1下复制出来的(注意sql2000可能没有这么多字段)

CREATE TABLE #LogicalFileBak(LogicalName nvarchar(128),
                             PhysicalName nvarchar(260),
                             Type char(1),
                             FileGroupName nvarchar(128),
                             [Size] numeric(20,0),
                             [MaxSize] numeric(20,0),
                             [Field] int,
                             [CreateLSN] int,
                             [DropLSN] int,
                             [UniqueId] uniqueidentifier,
                             [ReadOnlyLSN] int,
                             [ReadWriteLSN] int,
                             [BackupSizeInBytes] numeric(20,0),
                             [SourceBlockSize] numeric(20,0),
                             [FileGroupId] int,
                             [LogGroupGUID] nvarchar(200),
                             [DifferentialBaseLSN] int,
                              [DifferentialBaseLSNGUID] uniqueidentifier,
                              [IsReadOnly] int,
                              [IsPresent] int,
                              [TDEThumbprint] nvarchar(200)
                              );


三、把备份文件中的逻辑信息都存入临时表中

INSERT #LogicalFileBak EXEC('RESTORE FILELISTONLY FROM DISK = ''' + @bakFile + '''');

四、备份文件

USE master(必须是master,具体为什么我想不必多说多说了)
RESTORE DATABASE DB  (新数据库名)
   
FROM DISK = 'g:\back.Bak' (备份文件)
   
WITH MOVE '逻辑文件数据库名' TO 'E:\Program Files\Microsoft SQL Server2005\Data\DB.mdf'
   MOVE 
'逻辑文件数据库名' TO 'E:\Program Files\Microsoft SQL Server2005\Data\DB_log.ldf',
STATS 
= 10REPLACE
GO

按照如上步骤执行,各种数据库必然备份成功

如若想要详细方法,请发邮件1015037462@qq.com


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值