Как да се възстанови от регистър на транзакции в SQL Server - Софтуер
Наличието на план за архивиране е половината от успеха за стартиране и работа на вашия SQL Server. Другата половина е процесът на възстановяване. Трябва да се възстановите от срив на SQL Server (когато трябва да се възстановите до сървър в режим на готовност) или актуализации на средата за отчитане или разработка. Всеки от тези сценарии може да изисква възстановяване на резервни копия на журнали на транзакции.
Предизвикателството при архивирането на регистрационни файлове е, че те изискват да възстановите множество файлове, а не само един голям пълен архивен файл. За да възстановите успешно базата данни, трябва да имате всички създадени резервни копия на регистрите на транзакциите и те трябва да бъдат възстановени в точния ред, в който са създадени. Ако някое архивиране на регистрите на транзакции се повреди, не можете да възстановите последващи архиви на регистрите на транзакции след повредения. Те трябва да бъдат възстановени в ред и не можете да пропуснете нито един от файловете.
Тук ще разгледаме по-отблизо какво да възстановим и как да възстановим резервните копия на регистрите на транзакциите.
Ако в случай на отказ трябва да възстановите данните на друг сървър, първо трябва да направите резервно копие на активната част от регистъра на транзакциите, за да получите остатъчни транзакции, които все още не са записани в съществуващо архивиране на регистъра на транзакциите. За да създадете този последен архив на регистъра на транзакции, използвайте нещо като следната команда:
РЕЗЕРВЕН ЛОГАЛ Northwind
ДА ДИСКИРАМ = 'C: SQLBackupNorth.bak'
С NO_TRUNCATE
Това създава още едно архивиране на регистъра на транзакции, което след това ще се използва в процеса на възстановяване.
Следващата стъпка е да определите кои файлове трябва да бъдат възстановени. Надявам се, че вече знаете кои архиви трябва да бъдат възстановени. В противен случай можете да запитвате таблиците на SQL Server в msdb; тези таблици ще ви покажат всички архиви, направени на вашия сървър, включително архиви, създадени с планове за поддръжка, съветник в Enterprise Manager, команди T-SQL и инструмент на трета страна, който използва вградена функционалност на SQL Server за създаване на резервни копия.
Msdb съдържа следните таблици:
- архивен файл - Съдържа един ред за всеки файл с данни или регистрационен файл, който е бил архивиран
- backupmediafamily - Съдържа ред за всяко медийно семейство
- backupmediaset - Съдържа един ред за всеки набор от резервни среди
- backupset - Съдържа един ред за всеки набор за архивиране
ВЪЗСТАНОВЯВАНЕ НАЧАЛНО
Тази команда ви позволява да видите информация за заглавието на резервно копие за всички набори за архивиране на конкретно устройство за архивиране. Тази команда е полезна, когато работите с множество файлове или когато получавате архивен файл от сървър, който не управлявате. За да определите какво има в архивните файлове, можете да изпълните тази команда в Query Analyzer.
ВЪЗСТАНОВЯВАНЕ ФИЛИЛИСТОННО
Тази команда ви позволява да видите списък с базата данни и регистрационните файлове, съдържащи се в архивния набор, в каква файлова група се намират и размера на данните и регистрационните файлове. LogicalName и PhysicalName са ключови елементи от данни, които се използват по време на процеса на възстановяване.