易截截图软件、单文件、免安装、纯绿色、仅160KB

如何查询SQL Server备份还原历史记录

SQL Server在msdb数据中维护了一系列表,用来存储执行所有备份和还原的细节信息。即使你正在使用第三方的备份应用程序,只要这个应用程序使用SQL Server的虚拟设备接口(Virtual Device Interface---VDI)来执行备份和还原执行,那么执行细节依然被存储在这一系列表中。
存储细节的表包括:
backupset 
backupfile 
backupfilegroup (SQL Server 2005 upwards)
backupmediaset 
backupmediafamily 
restorehistory 
restorefile 
restorefilegroup 
logmarkhistory 
suspect_pages (SQL Server 2005 upwards) 
你可以在Books Online里面找到上面这些表的具体说明。
下面这个脚本可以帮你找出每个数据库近期的备份信息:
SELECT b.name, a.type, MAX(a.backup_finish_date) lastbackup
from msdb..backupset a
INNER JOIN master..sysdatabases b ON a.database_name COLLATE DATABASE_DEFAULT = b.name COLLATE DATABASE_DEFAULT
GROUP BY b.name, a.type
ORDER BY b.name, a.type
指定数据库最后20条事务日志备份信息:
SELECT TOP 20 b.physical_device_name, a.backup_start_date, a.first_lsn, a.user_name from msdb..backupset a
INNER JOIN msdb..backupmediafamily b ON a.media_set_id = b.media_set_id
WHERE a.type = 'L'
ORDER BY a.backup_finish_date DESC
指定时间段的事务日志备份信息:
SELECT b.physical_device_name, a.backup_set_id, b.family_sequence_number, a.position, a.backup_start_date, a.backup_finish_date
from msdb..backupset a
INNER JOIN msdb..backupmediafamily b ON a.media_set_id = b.media_set_id
WHERE a.database_name = 'AdventureWorks'
AND a.type = 'L'
AND a.backup_start_date > '10-Jan-2007'
AND a.backup_finish_date < '16-Jan-2009 3:30'
ORDER BY a.backup_start_date, b.family_sequence_number
删除备份日志的两个存储过程:
EXEC msdb..sp_delete_backuphistory '1-Jan-2005'
EXEC msdb..sp_delete_database_backuphistory 'AdventureWorks'
本文翻译自sqlbackuprestore,更多精彩内容请浏览http://www.sqlbackuprestore.com


相关文档:

SQL Server 2005中写文件的方法

--创建写文件的存储过程
ALTER proc [dbo].[p_movefile]
 @filename varchar(1000),--要操作的文本文件名  
 @text varchar(8000),   --要写入的内容
 @obj int
as  
begin
 declare @err  int,
   @src  varchar(255),
 &n ......

oracle 优化之 找出低效率sql 语句

SELECT EXECUTIONS , DISK_READS, BUFFER_GETS,
  ROUND((BUFFER_GETS-DISK_READS)/BUFFER_GETS,2) Hit_radio,
  ROUND(DISK_READS/EXECUTIONS,2) Reads_per_run,
  SQL_TEXT
  from V$SQLAREA
  WHERE EXECUTIONS>0
  AND BUFFER_GETS > 0
  AND (BUFFER_GETS-DISK_READS)/BUFFER_GETS ......

SQL 学习笔记之索引

----use pubs-sales
-----创建索引
create index index_name
on authors(au_lname)
--创建索引后表中所有的数据跟之前没有区别
select * from authors
--单独查索引列
select au_lname from authors
--强制使用非簇集索引
select * from  authors with(index(index_name))
--多字段非簇集索引
create inde ......

巧用SQL中的WITH(树型结构数据的查询)

如果表中存放的数据是树形结构,当知道某一个节点的值时,同时想取得它所有子节点的数据。
表结构:
        
         
 表中存放的是部门组织结构, BMN_CD部门,SSK_KAISO_LV是阶层,BMN_MKJ部门名称,JOI_KAISO_LV上 ......

SQL Server数据库为什么不能恢复单表数据

如果能从备份文件中只恢复一个表的数据,那不是很好吗?比如,你备份了AdventureWorks数据库,现的你只恢复里面Vendor表数据。不幸的是,SQL Server本身并不支持这样还原,你需要从第三方提供的工具中来执行这样的任务。
提供这种功能的程序都是一些SQL Server第三方备份工具。它们可以让你从备份文件中抽取或是读取单个表 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号