SQL Server数据库事务日志序列号(LSN)介绍
来源:互联网 发布:淘宝网的绿知了的价格 编辑:程序博客网 时间:2024/05/01 01:23
日志序列编号(LSN)是事务日志里面每条记录的编号。
当你执行一次备份时,一些LSN值就被同时存储在文件本身及msdb..backupset表中。你可以使用RESTORE HEADERONLY语法来从备份文件中获取LSN值。
注意:在SQL Server 2000中,有一列叫做DifferentialBaseLSN。但在SQL Server 2005中,相同的列名称变成了DatabaseBackupLSN。正解的列名应该是DatabaseBackupLSN,这个名称才能表达出它的意义,你可以从SQL Server 2000的联机丛书中找到相关说明。
FirstFSN值是备份设备中第一个事务的日志序列号,LastLSN值是最后一个。CheckpointLSN值是最近一次checkpoint日志的序列号。DatabaseBackupLSN是最近一次数据库完整备份的日志序列号。
那么LSN值对我们来说,有什么价值呢?对于差异备份设备来说,DatabaseBackupLSN值可以告诉我们数据库完整备份都需要哪些差异备份。你需要找出所有CheckpointLSN值相同的完整备份和差异备份。
对于一个事务日志备份来说,在数据库还原过程中,FirstLSN和LastLSN值可以帮助我们对事务日志文件按序号进行排序。
假如数据库正处于还原状态,而且正在等待另外的还原事务日志,那你怎么能分辨出它当前的LastLSN值,以便你自己清楚下一步应该应用哪个日志呢?没关系,msdb..restorehistory表存储了每一个数据库还原信息。你可以引用msdb..backupset表,你可以找现存储事务日志的最后一个事务日志备份,它的LastLSN查询语句如下:
SELECT TOP 1 b.type, b.first_lsn, b.last_lsn, b.checkpoint_lsn, b.database_backup_lsn
FROM msdb..restorehistory a
INNER JOIN msdb..backupset b ON a.backup_set_id = b.backup_set_id
WHERE a.destination_database_name = 'AdventureWorks'
ORDER BY restore_date DESC
本文翻译自sqlbackuprestore,更多精彩内容请浏览http://www.sqlbackuprestore.com
- SQL Server数据库事务日志序列号(LSN)介绍
- SQL Server数据库事务日志序列号(LSN)介绍
- SQL Server数据库事务日志序列号(LSN)详解
- 日志序列号 LSN
- SQL Server事务日志介绍
- SQL Server事务日志介绍
- SQL Server事务日志介绍
- sql server 错误9003:LSN无效(日志扫描号无效),对数据库的修复.
- sql server 错误9003:LSN无效(日志扫描号无效),对数据库的修复.
- sql server 错误9003:LSN无效(日志扫描号无效),对数据库的修复
- 【转】sql server 错误9003:LSN无效(日志扫描号无效),对数据库的修复
- MS SQL Server 事务日志介绍
- MS SQL Server 事务日志介绍
- sql server 错误9003:LSN无效(日志扫描号无效)
- 通过事务日志恢复SQL SERVER 数据库
- SQL Server数据库事务日志存储序列
- SQL Server数据库事务日志存储序列
- SQL Server数据库错误9003(LSN无效)的处理方法
- 让我们谈谈需求,说说设计
- Effective Java 学习笔记 (6)
- 对话框的一些操作
- Effective Java 学习笔记 (7)
- 郁闷坏了
- SQL Server数据库事务日志序列号(LSN)介绍
- 设计模式大全
- Effective Java 学习笔记 (7)
- 80后被分成九大派,你是哪一派?
- Java泛型方法
- Effective Java 学习笔记(8)
- block格式
- 【健康】久坐会增加患病几率
- 个人时间管理之三