ПредишенСледващото

SQLskills стартира нова инициатива за записване на настаняването на основни знания, ние го нарича SQL101. Ще пиша за нещата, които често виждаме направено правилно, технологиите, които се използват неправилно, както и много погрешни схващания, които водят до сериозни проблеми. Ако искате да намерите всички записи в тази серия, проверете SQLskills.com/help/SQL101 линк (на английски).

Един от въпросите, които винаги питат защо възстановяване на базата данни от пълен архив отнема повече време, отколкото създаването на пълен архив. Отговорът се крие във факта, че почти винаги процеса на възстановяване изисква повече работа.

Създаване на пълно резервно копие включва следните основни етапи:

  1. Създаване на контролен пункт.
  2. Четене на всички използвани данни от файл с данни (технически, четенето на всички неизплатени степен, без значение колко от 8 страници в степента, в действителност се използва).
  3. Четене регистър на операциите, от началото на най-старата неангажирани сделката с първоначална отправна точка до момента, втората стъпка е завършена. Необходимо е, че базата данни могат да бъдат възстановени в последователно състояние по време на периода от време, който принадлежи към резервно копие (вижте тази статия (на английски) за подробно обяснение).
  4. (Незадължително тестване на контролни суми на всички страници, по избор прилагане на резервната компресия и опция за криптиране на архива).

Възстановяване след пълен архив включва следните основни етапи:

Етап 3 често е най-дългият етап в събирането и е пропорционална на размера на регистъра на операциите. Този процес се извършва в една единствена стъпка, вместо да се извършва паралелно с стъпка 1-2, и дълбоко проучване виждате скорошната публикация в блога Боб Уорд.

Стъпка 5 може да бъде най-дългият етап в процеса на възстановяване, ако резервната процес съществува от много поети сделки. И още по-дълго, то може да бъде, ако регистър на транзакциите е на голям брой виртуални лог файлове (хиляди), защото те са много бавни намаление на цените механизъм неангажирани сделки.

Ето списък с нещата, които можете да направите, за да се направи възстановяване от пълно копие по-бързо:

  • Уверете се, че моментално файл инициализация активиран например SQL Server, което извършва операция по оползотворяване, за да предотврати загубата на време на нула подложка от всякакви файлове с данни, които трябва да бъдат създадени. Това може да спести часове престой в продължение на много големи файлове с данни.
  • Ако е възможно - да възстанови над съществуващата база данни - не се изтрива съществуващите файлове. Така ще се избегне необходимостта и възможностите на запълване на пълния размер на файлове с нули, по-специално регистър на операциите на файлове. Бъдете много внимателни, когато се използва тази възможност, тъй като съществуващата база данни ще бъде безнадеждно унищожава веднага след като процесът на възстановяване ще започне да го презаписване.
  • Обмислете използването на резервен компресия, тя може да се ускори работата и да се създаде и да се възстанови на резервни копия, както и да спестите дисково пространство и пространство за съхранение на разходите.
  • Помислете за използване на множество архивни файлове, като всеки от тях - на отделен том. SQL Server признава тази ситуация и ще използва паралелно записване (една нишка за единица обем) за файлови архиви, когато обратно нагоре и четене в процеса на възстановяване - ускоряване на всички процеси. Ако имате няколко файлове с бази данни, ще има подобен на паралелното на I / O процеси - осигуряване на още по-голямо ускорение.
  • Опитайте се да избегнете дълго сделка, тъй като те се нуждаят от дълго време в процеса на връщане назад.
  • Управление на регистър на транзакциите, за да се избегне наличието на прекалено големи количества виртуални лог файловете на наличието на сделки, които изискват намаление на цените, намаление на цените се извършва възможно най-бързо. Вижте тази публикация в блога (на английски) за подробно обяснение.

Надявам се, че това е от полза!

Свързани статии

Подкрепете проекта - споделете линка, благодаря!