Avamar:运行本机 SQL 增量备份对 Avamar作的 SQL 影响
Summary: 本文介绍从 SQL Management Studio 本机运行 SQL 增量备份如何影响 Avamar SQL 备份。因此,由于日志链 LSN 序列中断,Avamar 增量备份预期会报告日志间隙。
This article applies to
This article does not apply to
This article is not tied to any specific product.
Not all product versions are identified in this article.
Instructions
以下步骤旨在中断 Avamar“日志链”序列,从而导致“日志间隙”错误:
步骤#5:
若要解决此故障并同步 LSN 信息,请为此数据库运行完整备份。
- 执行完整备份,然后执行 Avamar 增量备份。保留 sqlmeta.xml 文件中数据库条目的选项卡。
- 在数据库上执行本机 SQL 增量备份,强制在 SQL 端更改 LSN。在 sqlmeta.xml 文件中保留数据库条目的选项卡。
- 现在运行 Avamar 增量备份,预计会报告数据库上的 日志间隙错误。在这里,我们注意到 sqlmeta.xml 文件中的条目被删除了。删除仅针对策略驱动的增量备份发生,如果运行按需增量备份, 则保留sqlmeta.xml 文件中的条目。
- 从 SQL Management Studio 查询分析器窗口中执行以下查询以获取“日志序列号”详细信息。
SELECT msdb.dbo.backupset.database_name,
msdb.dbo.backupset.backup_start_date,
msdb.dbo.backupset.backup_finish_date,
msdb.dbo.backupset.type,
msdb.dbo.backupset.database_backup_lsn,
msdb.dbo.backupset.first_lsn,
msdb.dbo.backupset.last_lsn
FROM msdb.dbo.backupmediafamily
INNER JOIN msdb.dbo.backupset
ON msdb.dbo.backupmediafamily.media_set_id = msdb.dbo.backupset.media_set_id
WHERE database_name IN ('test_db_1')
--and msdb.dbo.backupset.backup_finish_date between '1/20/2020' and '1/27/2020'
ORDER BY
2 DESC,
3 DESC 此查询的输出如下所示:
database_name backup_start_date backup_finish_date type
database_backup_lsn first_lsn last_lsn
test_db_1 2020-02-12 16:37:31.000 2020-02-12 16:37:31.000 D
34000000085100037 34000000089600037 34000000091300001
test_db_1 2020-02-05 20:29:23.000 2020-02-05 20:29:23.000 L
34000000085100037 34000000083100001 34000000087600001
test_db_1 2020-02-05 20:28:55.000 2020-02-05 20:28:55.000 D
34000000080600037 34000000085100037 34000000086800001
test_db_1 2020-02-05 20:17:30.000 2020-02-05 20:17:30.000 L
34000000080600037 34000000078600001 34000000083100001
test_db_1 2020-02-05 20:17:02.000 2020-02-05 20:17:03.000 D
34000000074600075 34000000080600037 34000000082300001
test_db_1 2020-02-05 11:53:18.000 2020-02-05 11:53:18.000 L
34000000074600075 34000000050200075 34000000078600001
test_db_1 2020-02-05 11:52:50.000 2020-02-05 11:52:50.000 D
34000000050200075 34000000074600075 34000000077800001
test_db_1 2020-02-04 15:05:18.000 2020-02-04 15:05:18.000 D 0
34000000050200075 34000000053600001 步骤#2:
- 在数据库上运行完整 Avamar 备份
- 运行查询以再次检查 LSN 编号
SELECT last_lsn, type, user_name FROM msdb..backupset WHERE
database_name=N'test_db_1' AND type LIKE 'L' ORDER by last_lsn DESC 此查询的输出如下所示:
last_lsn type user_name
34000000087600001 L NT AUTHORITY\SYSTEM
34000000083100001 L NT AUTHORITY\SYSTEM
34000000078600001 L NT AUTHORITY\SYSTEM 步骤#3:
- 运行 Avamar 增量备份
- 通过运行以下查询检查 LSN 编号
- 验证 sqlmeta.xml 中的backup_lsn是否与以下查询显示的内容匹配:
SELECT last_log_backup_lsn FROM sys.database_recovery_status "WHERE database_id
= DB_ID(N'test_db_1')" 此查询的输出如下所示:
test_db_1 2020-02-12 16:44:40.000 2020-02-12 16:44:40.000 L
34000000089600037 34000000087600001 34000000092500001
test_db_1 2020-02-12 16:37:31.000 2020-02-12 16:37:31.000 D
34000000085100037 34000000089600037 34000000091300001
test_db_1 2020-02-05 20:29:23.000 2020-02-05 20:29:23.000 L
34000000085100037 34000000083100001 34000000087600001
test_db_1 2020-02-05 20:28:55.000 2020-02-05 20:28:55.000 D
34000000080600037 34000000085100037 34000000086800001
test_db_1 2020-02-05 20:17:30.000 2020-02-05 20:17:30.000 L
34000000080600037 34000000078600001 34000000083100001
test_db_1 2020-02-05 20:17:02.000 2020-02-05 20:17:03.000 D
34000000074600075 34000000080600037 34000000082300001
test_db_1 2020-02-05 11:53:18.000 2020-02-05 11:53:18.000 L
34000000074600075 34000000050200075 34000000078600001
test_db_1 2020-02-05 11:52:50.000 2020-02-05 11:52:50.000 D
34000000050200075 34000000074600075 34000000077800001
test_db_1 2020-02-04 15:05:18.000 2020-02-04 15:05:18.000 D 0
34000000050200075 34000000053600001 步骤#4:
- 运行本机 SQL 增量备份。
步骤#5:
- 运行另一个预计会生成“日志间隙”错误的策略驱动型 Avamar 增量备份。
- 重新运行 LSN 验证查询
- 检查日志以验证备份是否失败并显示 日志间隙错误,如下面的片段所示:
2020-02-12 16:58:01 avsql Info <19487>: Start checking for SMO DLL version
12...
2020-02-12 16:58:02 avsql Info <7065>: Working on target '(local)/test_db_1'
2020-02-12 16:58:03 avsql Info <40399>: Last full backup of target
'(local)/test_db_1' was found, labelnum = '45'.
2020-02-12 16:58:20 avsql Info <15765>: A log gap was identified or a full
backup was not found.
2020-02-12 16:58:20 avsql Error <40418>: Skipping database '(local)/test_db_1'
due to the following reason: A log gap was identified or a full backup was not
found.
2020-02-12 16:58:20 avsql Info <14245>: Creating a thread pool with 2 worker
threads.
2020-02-12 16:58:20 avsql Info <14275>: There is no more tasks to process.
2020-02-12 16:58:20 avsql Info <14271>: Waiting for worker threads to finish
...
2020-02-12 16:58:20 avsql Info <16256>: Creating process summary ...
2020-02-12 16:58:20 avsql Info <18493>: Status wrapup summary for all tragets
was processed.
2020-02-12 16:58:20 avsql Info <16257>: Inserted task: 0, completed: 0,
aborted: 0.
2020-02-12 16:58:20 avsql Info <16260>: Generating sql metadata ...
2020-02-12 16:58:20 avsql Error <14272>: There are no successfully finished
database tasks!
2020-02-12 16:58:20 avsql Error <14294>: An error occurred when generating sql
metadata
运行以下查询以验证 LSN 序列中的中断
SELECT last_log_backup_lsn FROM sys.database_recovery_status "WHERE database_id
= DB_ID(N'test_db_1')" 用于获取数据库last_lsn信息的 SQL 查询输出:
database_name backup_start_date backup_finish_date type
database_backup_lsn first_lsn last_lsn
test_db_1 2020-02-12 16:52:42.000 2020-02-12 16:52:42.000 L
34000000089600037 34000000092500001 34000000095800001
test_db_1 2020-02-12 16:44:40.000 2020-02-12 16:44:40.000 L
34000000089600037 34000000087600001 34000000092500001
test_db_1 2020-02-12 16:37:31.000 2020-02-12 16:37:31.000 D
34000000085100037 34000000089600037 34000000091300001
test_db_1 2020-02-05 20:29:23.000 2020-02-05 20:29:23.000 L
34000000085100037 34000000083100001 34000000087600001
test_db_1 2020-02-05 20:28:55.000 2020-02-05 20:28:55.000 D
34000000080600037 34000000085100037 34000000086800001
test_db_1 2020-02-05 20:17:30.000 2020-02-05 20:17:30.000 L
34000000080600037 34000000078600001 34000000083100001
test_db_1 2020-02-05 20:17:02.000 2020-02-05 20:17:03.000 D
34000000074600075 34000000080600037 34000000082300001
test_db_1 2020-02-05 11:53:18.000 2020-02-05 11:53:18.000 L
34000000074600075 34000000050200075 34000000078600001
test_db_1 2020-02-05 11:52:50.000 2020-02-05 11:52:50.000 D
34000000050200075 34000000074600075 34000000077800001
test_db_1 2020-02-04 15:05:18.000 2020-02-04 15:05:18.000 D 0
34000000050200075 34000000053600001 sqlmeta.xml 文件将最后一个 backup_lsn 显示为:34000000092500001:
2020/02/12-21:58:20.86999 [avsql_assist] avsql_metadata::avsql_metadata
sqlmetadata = '<sqlmetadata threadpool_size="2" version="1.1">
<instance name="(local)">
<database last_incremental_backup="1581525880" last_restore_backup="0"
backup_lsn="34000000092500001" last_differentail_backup="0" name="test_db_1"
is_system="false" last_full_backup="1581525451"
differential_base_lsn="34000000089600037">
<backup_data stream_mark="stream" backup_lsn="34000000087600001"
av_group_replica="primary" num_vd_streams="1" name="f-0.test_db_1"
size="4915200" backup_time="1581525451">
<file_group name="PRIMARY">
<file file_type="Rows Data" physical_path="C:\Program Files\Microsoft
SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\test_db_1.mdf"
logical_name="test_db_1" />
</file_group>
<file file_type="Log" physical_path="C:\Program Files\Microsoft SQL
Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\test_db_1_log.ldf"
logical_name="test_db_1_log" />
</backup_data>
<backup_data stream_mark="stream" backup_lsn="34000000092500001"
av_group_replica="primary" num_vd_streams="1" name="i-1.test_db_1"
size="655360" backup_time="1581525880">
<file_group name="PRIMARY">
<file file_type="Rows Data" physical_path="C:\Program Files\Microsoft
SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\test_db_1.mdf"
logical_name="test_db_1" />
</file_group>
<file file_type="Log" physical_path="C:\Program Files\Microsoft SQL
Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\test_db_1_log.ldf"
logical_name="test_db_1_log" />
</backup_data>
</database>
</instance>
</sqlmetadata> 下面的 Avamar 调试 SQL 日志片段显示 SQL 查询中的两个 LSN 编号与 sqlmeta.xml 不匹配:
2020/02/12-21:58:20.87599 [avsql_assist] <===
avsql_assist::evaluate_backup_lsn
2020/02/12-21:58:20.87599 [avsql_assist] ===>
sqlconnectimpl_smo::get_last_backup_lsn
2020/02/12-21:58:20.87599 [avsql_assist] retrieving last backup lsn for
'test_db_1' db from sys.database_recovery_status
2020/02/12-21:58:20.87599 [avsql_assist] ===> sqlconnectimpl_smo::InitDll
2020/02/12-21:58:20.87599 [avsql_assist] SMO dll already loaded.
2020/02/12-21:58:20.87599 [avsql_assist] <=== sqlconnectimpl_smo::InitDll
2020/02/12-21:58:20.87899 [avsql_assist] ==> SMOWrap::SMO_GetLastBackupLSN
2020/02/12-21:58:20.87899 [avsql_assist] database 'test_db_1', last backup lsn
= '34000000095800001'
2020/02/12-21:58:20.87899 [avsql_assist] <===
sqlconnectimpl_smo::get_last_backup_lsn
2020/02/12-21:58:20.87899 [avsql_assist] ===> avsql_metadata::get
2020/02/12-21:58:20.87899 [avsql_assist] ===> avsql_metadata::get
2020/02/12-21:58:20.87899 [avsql_assist] <=== avsql_metadata::get
2020/02/12-21:58:20.87899 [avsql_assist] <=== avsql_metadata::get
2020/02/12-21:58:20.87899 [avsql_assist] Last backup LSN: '34000000092500001',
Current LSN: '34000000095800001'
2020/02/12-21:58:20.87899 [avsql_assist] ===>
avsql_assist::align_numeric_ustrings
2020/02/12-21:58:20.88000 [avsql_assist] Before alignment - Str1:
'34000000092500001', Str2: '34000000095800001'
2020/02/12-21:58:20.88000 [avsql_assist] After alignment - Str1:
'34000000092500001', Str2: '34000000095800001'
2020/02/12-21:58:20.88000 [avsql_assist] <===
avsql_assist::align_numeric_ustrings
2020/02/12-21:58:20.88000 [avsql_assist] Aligned before compare- Last backup
(metadata) LSN: '34000000092500001', Current (SQL Server) LSN:
'34000000095800001'
2020-02-12 16:58:20 avsql Info <15765>: A log gap was identified or a full
backup was not found.
2020/02/12-21:58:20.88199 [avsql_assist] ===> sqlconnect::~sqlconnect
2020/02/12-21:58:20.89100 [avsql_assist] <=== sqlconnect::~sqlconnect
2020/02/12-21:58:20.89100 [avsql_assist] <===
avsql_assist::snapup_check_timestamps
2020-02-12 16:58:20 avsql Error <40418>: Skipping database '(local)/test_db_1'
due to the following reason: A log gap was identified or a full backup was not
found.
若要解决此故障并同步 LSN 信息,请为此数据库运行完整备份。
Affected Products
Avamar Plug-in for SQLArticle Properties
Article Number: 000214572
Article Type: How To
Last Modified: 05 Sept 2025
Version: 2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.