Avamar: Avamar işlemlerinde yerel SQL artımlı yedeklemeyi çalıştırmanın SQL etkisi

Summary: Bu makalede, SQL Management Studio'dan yerel olarak SQL artımlı yedeklemeleri çalıştırmanın Avamar SQL Yedeklemelerini nasıl etkilediği açıklanmaktadır. Bu nedenle, Avamar artımlı yedeklemelerinin, günlük zinciri LSN dizisindeki bir kopukluk nedeniyle bir günlük boşluğu bildirmesi beklenir. ...

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

Aşağıdaki adımlar, "günlük boşluğu" hatalarına yol açan Avamar "günlük zinciri" sırasını kırmak için tasarlanmıştır:
  1. Tam yedeklemenin ardından Avamar artımlı yedekleme gerçekleştirin. sqlmeta.xml dosyasındaki veritabanı girişlerini takip edin.
  2. SQL tarafında LSN değişikliğini zorlayarak Veritabanı üzerinde yerel bir SQL artımlı yedekleme gerçekleştirin. sqlmeta.xml dosyada Veritabanı girişlerini takip edin.
  3. Şimdi de Veritabanında bir günlük boşluğu hatası bildirmesi beklenen Avamar artımlı yedeklemeyi çalıştırın. Burada sqlmeta.xml dosyasındaki girişin kaldırıldığını fark ediyoruz. Silme işlemi yalnızca Politikaya dayalı artımlı yedeklemeler için gerçekleşir. Talep üzerine artımlı yedekleme çalıştırılırsa sqlmeta.xml dosyasındaki girişler korunur.
# 1 Adım:
  • "Günlük sıra numarası" ayrıntılarını almak için SQL Management Studio Sorgu çözümleyicisi penceresinden aşağıdaki sorguyu gerçekleştirin.
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
Bu sorgunun çıktısı aşağıda gösterilmiştir:
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 Adım:
  • Veritabanlarında Tam Avamar yedeklemesini çalıştırma
  • LSN numaralarını tekrar kontrol etmek için sorguyu çalıştırın
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 
Bu sorgunun çıktısı aşağıda gösterilmiştir:
last_lsn    type    user_name
34000000087600001    L    NT AUTHORITY\SYSTEM
34000000083100001    L    NT AUTHORITY\SYSTEM
34000000078600001    L    NT AUTHORITY\SYSTEM 
# 3 Adım:
  • Avamar Incremental yedeklemeyi çalıştırma
  • Aşağıdaki sorguyu çalıştırarak LSN numaralarını kontrol edin
  • sqlmeta.xml'dan gelen backup_lsn aşağıdaki sorguda gösterilenle eşleştiğini doğrulayın: 
SELECT last_log_backup_lsn FROM sys.database_recovery_status "WHERE database_id
= DB_ID(N'test_db_1')" 
Bu sorgunun çıktısı aşağıda gösterilmiştir:
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 Adım:
# 5 Adım:
  • Günlük boşluğu" hatası oluşturması beklenen başka bir Policy tabanlı Avamar Incremental yedeklemesi çalıştırın.
  • LSN doğrulama sorgusunu yeniden çalıştırma
  • Yedeklemenin aşağıdaki ekran alıntısında gösterildiği gibi günlük boşluğu hatasıyla başarısız olduğunu doğrulamak için günlükleri kontrol edin:
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 dizisindeki kesmeyi doğrulamak için aşağıdaki sorguyu çalıştırın
SELECT last_log_backup_lsn FROM sys.database_recovery_status "WHERE database_id
= DB_ID(N'test_db_1')"  
Veritabanları ile ilgili last_lsn bilgileri almak için SQL sorgu çıktısı:
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 dosyası son backup_lsn şu şekilde gösterir: 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> 
Aşağıdaki Avamar Hata Ayıklama SQL günlükleri kod parçacığı, SQL sorgusundaki ve sqlmeta.xml iki LSN numarasının eşleşmediğini gösteriyor:
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. 

Bu arızayı gidermek ve LSN bilgilerini senkronize etmek için bu Veritabanı için tam yedekleme çalıştırın.

Affected Products

Avamar Plug-in for SQL
Article 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.