Baza wiedzy LINKSPOT › Nowości i zmiany

[Windows] Backup baz systemowych

Nowości i zmiany · Opublikowano 2025-04-11

Bazy systemowe w Microsoft SQL Server to specjalne bazy danych, które są integralną częścią systemu zarządzania bazą danych SQL Server. Są one używane do przechowywania kluczowych informacji dotyczących samego systemu oraz jego konfiguracji.

Bazy Systemowe w Microsoft SQL Server

Istnieje kilka głównych baz systemowych w SQL Server, z których każda pełni określoną rolę.

Backup jest możliwy tylko dla trzech rodzajów baz: master, model oraz msdb.

Backup baz systemowych

Backup wszystkich baz na serwerze

W przypadku wybrania tej opcji, automatycznie nie będą uwzględniane wszystkie bazy systemowe w zadaniu. Konieczne będzie ich osobne wybranie.

Backup kopii bazy systemowej

Zadanie backupu należy tworzyć dla bazy systemowej, znajdującej się w katalogu baz systemowych – System Databases.
Jeżeli zostanie utworzone zadanie backupu dla kopii bazy systemowej, umieszczonej w katalogu baz użytkownika – Database Snapshots, aplikacja IBARD nie zidentyfikuje jej jako bazy systemowej, co może skutkować potencjalnymi niezgodnościami lub błędami.

Przywracanie baz systemowych

Zagrożenia

Przywracanie bazy systemowej z backupu wymaga ostrożności i proces powinien być wykonywany w ostateczności, ponieważ niesie za sobą potencjalne zagrożenia i konsekwencje. Oto kilka potencjalnych problemów związanych z przywracaniem bazy systemowej z backupu:

Specyfika przywracania

Bazy systemowe są przechowywane w swoich dedykowanych podkatalogach, co zapewnia im unikalność. Nie zaleca się przywracania baz systemowych pod inną nazwą. Przywracanie bazy master pod inną nazwą niż oryginalna może skutkować umieszczeniem jej w miejscu przeznaczonym dla baz użytkownika – Database Snapshots. Dla baz model i msdb problem nie występuje, aczkolwiek i tak jest to praktyka niezalecana.
Po przywróceniu backupu bazy na serwer, zawsze wykonywana jest kwerenda „checkdb” (weryfikacja bazy), która dla bazy master spoza katalogu „System Databases” zwróci błąd, sytuacja ta wynika z unikalnej struktury bazy master.
Kwerenda „checkdb” nie zgłosi błędu, gdy baza master zostanie przywrócona w to samo miejsce pod oryginalną nazwą. Warto zaznaczyć, że przywracanie bazy master w tym samym miejscu i nazwie nadpisuje istniejącą, co może prowadzić do potencjalnych problemów opisanych wyżej.

+ Mam problem z tym tematem Otwórz w portalu bazy wiedzy »