前两天试了试sql server 2005里面的数据库备份与还原,出了不少错,典型的非典型的都有,集中列在这边,希望后来者不用像我那时候一样找的那么辛苦。。。
1. .mdf文件的分离.mdf的还原比.bak要方便的多,出问题的几率也小的多(个人经验来说),问题主要是出现在分离的阶段,还原的时候没遇到过问题,用附加就行了。分离的时候若出现:无法分离数据库,因为它正在使用,可以用如下代码解决:
use master
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
ALTER proc [dbo].[killspid] (@dbname varchar(20))
as
begin
declare @sql nvarchar(500),@temp varchar(1000)
declare @spid int
set @sql='declare getspid cursor for
select spid from sysprocesses where dbid=db_id('''+@dbname+''')'
exec (@sql)
open getspid
fetch next from getspid into @spid
while @@fetch_status<>-1
begin
set @temp='kill '+rtrim(@spid)
exec(@temp)
f