Published on

October 31, 2019

Понимание фантомных процессов резервного копирования в SQL Server

Вы когда-нибудь сталкивались с загадочными процессами резервного копирования, которые запускаются в вашей среде SQL Server и которые вы не могли объяснить? Эти фантомные резервные копии могут быть раздражающими, вызывать проблемы с производительностью и мешать нормальной работе резервного копирования. В этой статье мы рассмотрим концепцию фантомных резервных копий и обсудим, как их устранить и устранить.

Проблема

Фантомные резервные копии – это процессы резервного копирования, которые запускаются в случайные интервалы в течение дня, иногда до 12 раз в рабочее время. Эти резервные копии могут вызывать предупреждения о замораживании ввода-вывода, неудачные попытки входа и общее ухудшение производительности производства. Проблема заключается в определении источника этих резервных копий и поиске решения для их остановки.

Исследование проблемы

Когда сталкиваются с фантомными резервными копиями, системным администраторам обычно предполагается, что проблема заключается в самом SQL Server. Однако перед внесением изменений в конфигурацию SQL Server необходимо тщательно исследовать все возможные причины.

Один из способов начать исследование – это запросить историю резервного копирования с использованием T-SQL. Анализируя записи резервного копирования, вы можете выявить любые необычные шаблоны резервного копирования или несоответствия. Например:

SELECT a.database_name, CONVERT(DATE, a.backup_start_date) AS backup_date, COUNT(a.database_name) AS BackupCount, a.user_name
FROM msdb.dbo.backupset a
INNER JOIN msdb.dbo.backupmediafamily b
ON a.media_set_id = b.media_set_id
WHERE a.user_name NOT LIKE 'LesRoisgrenouilles%'
AND a.backup_start_date < GETDATE() - 7
AND a.database_name = 'DBA'
GROUP BY a.database_name, CONVERT(DATE, a.backup_start_date), a.user_name
ORDER BY a.database_name, backup_date DESC;

Анализируя результаты этого запроса, вы можете выявить любую необычную резервную активность и определить, связана ли она с фантомными резервными копиями.

Отслеживание источника

Если записи резервного копирования не предоставляют достаточно информации, вы можете использовать расширенные события для отслеживания источника резервных копий. Создав сеанс расширенных событий, вы можете захватить соответствующую информацию, такую ​​как SQL-текст, идентификатор сеанса и имя хоста клиента. Например:

/* databases_backup_restore_throughput */
SELECT DB_ID('AdventureWorks2014');
GO
USE master;
GO
-- Создание сеанса событий
IF EXISTS(SELECT * FROM sys.server_event_sessions WHERE name='BackupThroughput')
    DROP EVENT SESSION BackupThroughput ON SERVER;
GO
CREATE EVENT SESSION BackupThroughput
ON SERVER
ADD EVENT sqlserver.databases_backup_restore_throughput
(ACTION
 (
 sqlserver.database_name,
 sqlserver.nt_username,
 sqlserver.session_id,
 sqlserver.client_hostname,
 sqlserver.client_app_name,
 sqlserver.sql_text
 )
 WHERE database_id = 8
)
  , ADD EVENT sqlserver.trace_print
(WHERE database_id = 8)
ADD TARGET package0.event_file
(SET filename = N'C:DatabaseXEBackupThroughput.xel');
/* Запуск сеанса */
ALTER EVENT SESSION BackupThroughput ON SERVER STATE = START;
GO

Анализируя захваченные события, вы можете получить представление об источнике резервных копий и, возможно, выявить любые внешние сущности или службы, вызывающие их.

Устранение проблемы

После определения источника фантомных резервных копий вы можете принять соответствующие меры для устранения проблемы. В некоторых случаях резервные копии могут быть вызваны внешними службами или инструментами, такими как антивирусное программное обеспечение или резервные решения. Важно общаться с системными администраторами, ответственными за эти инструменты, и убедиться, что они осознают влияние на среду SQL Server.

Если резервные копии вызваны антивирусным программным обеспечением, создающим снимки VSS, рекомендуется найти альтернативный план резервного копирования и восстановления, который не мешает процессу восстановления базы данных. Настаивание на доступе к инструменту, вызывающему резервные копии, может помочь в устранении неполадок и поиске подходящего решения.

Заключение

Фантомные процессы резервного копирования в SQL Server могут вызывать головную боль, вызывать проблемы с производительностью и мешать нормальной работе резервного копирования. Тщательно исследуя проблему, отслеживая источник с помощью расширенных событий и сотрудничая с системными администраторами, ответственными за внешние инструменты, вы можете устранить проблему и обеспечить бесперебойную работу вашей среды SQL Server.

Помните, что важно приоритезировать план восстановления базы данных и избегать инструментов или служб, которые могут его нарушить. SQL Server требует особого подхода к резервному копированию и восстановлению, и обращение к нему как к файловому или печатному серверу может привести к ненужным сложностям.

Для получения более подробной информации о устранении проблем с резервным копированием и улучшении навыков работы с SQL Server рекомендуется изучить расширенные события и другие связанные темы.

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.