SqlServer2008 数据库的恢复和还原 及注意事项
???????? 一、数据库的恢复: ???????????????? 1.首先说明下,我们在数据库恢复过程中可能遇到的情况,有以下几种: ?????????????????????? 还原或删除sql server 2008数据库时,经常烩出现: ?????????????????????????????? 那么我们的处理办法是, ?????????????????????????????? 首先去尝试把sqlserver的实例服务重新启动2次之后,重新进入 Manage??? Studio之后,进入数据库设置选项重新设置为单用户即可。 ?????????????????????????????? 如果以上方法不可行,那么可以直接使用以下语句,处理:??????????????????????????????? use master ALTER DATABASE 数据库名 SET OFFLINE WITH ROLLBACK IMMEDIATE --主备份还原 restore database 数据库名 from disk='F:Sample_backup_2014_11_30_010003_1686962.bak' with replace,norecovery --增量备份还原 restore database 数据库名 from disk='F:Sample_backup_2014_11_30_010003_1686962.bak' with recovery ALTER DATABASE 数据库名 SET ONLINE WITH ROLLBACK IMMEDIATE go ????????? 二、数据库的备份: ??????????????? 1.如果我们使用自动备份的话,如下: ??????????? SQL SERVER 2008 自动备份数据库脚本,构建存储过程名,调用存储过程完成,可由计划任务执行。 ? ??? ? ? ?? 创建过程名: declare @filename varchar(1024) declare @path varchar(1024) set @path = N'F:Backup'; declare @extension_name varchar(16) set @extension_name = N'bak'; set @filename = convert(varchar(1024),getdate(),120) set @filename = replace(@filename,':','') set @filename = replace(@filename,'-',' ','') set @filename = @filename + '_' + convert (varchar(3),datepart(ms,getdate())) + N'.' + @extension_name -- 得到完整目标文件,数据库将备份到这个中 set @filename = @path + @filename -- select @filename -- 开始备份,Sample是需要备份的数据库,COMPRESSION 参数表示压缩,可节省磁盘空间 backup database [Sample] to disk = @filename with noformat,noinit,name = N'Sample-完整数据库备份',skip,norewind,nounload,stats = 10,COMPRESSION -- 删除20天前的备份文件 declare @olddate datetime select @olddate=getdate()-20 -- 执行删除 execute master.dbo.xp_delete_file 0,@path,@extension_name,@olddate,1 go 数据库备份关键语句: declare @a varchar(100) set @a = 'F:Sample_backup_(' + convert(varchar,12) + ').bak' backup database itsm_test_816 to disk = @a backup database 数据库名称 to disk = 'F:Sample_backup_2014_11_30_010003_1686962.bak' (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |