SQL Server Завжди майте план резервування
В ідеальному світі жорсткі диски та інше обладнання ніколи не ламаються. У ПЗ ніколи не буває дефектів, користувачі не помиляються, а хакери не досягають своїх цілей.
Однак ми живемо не в найдосконалішому світі. Ми маємо передбачати небажані події та готуватися до них. Створення та обслуговування якісних резервних копій, придатних для відновлення, є одним з високопріоритетних завдань будь-якого адміністратора або інженера, що працює з SQL Server.
Резервування та відновлення - це не HA
Є одне хороше базове правило, яке потрібно пам'ятати: резервування та відновлення не є засобом забезпечення високої доступності (high availability, HA). Відновлення бази даних із резервної копії — це просто «лагодження», а не забезпечення доступності.
Якщо ви працюєте з великою або критично важливою системою, вам знадобиться, щоб база даних була доступна постійно або протягом тривалих періодів часу з мінімальними перервами на обслуговування. Тому час, що витрачається відновлення працездатності бази даних, має бути якнайкоротше.
Крім того, якщо у вас надзвичайно великі бази даних, для їх резервування та відновлення потрібні більш тривалі періоди часу. Ви повинні розглянути деякі нові функції, запропоновані SQL Server для збільшення швидкості резервування та відновлення. Вони допоможуть звести до мінімуму перешкоди для користувачів, які створюються операціями резервування та відновлення.
Ось деякі з цих інших методик.
Кілька пристроїв резервування: якщо ви виконуєте резервування та відновлення великої бази даних, при резервуванні слід використовувати декількапристроїв одночасно. За такої конфігурації ви зможете записувати резервні копії відразу на всі пристрої. Використання кількох пристроїв резервування під час роботи з SQL Server дозволяє паралельно записувати резервні копії на всі пристрої.
Одне з потенційних вузьких місць, що знижують пропускну спроможність резервування, швидкість пристрою резервування. При використанні декількох пристроїв резервування пропускна здатність збільшується пропорційно до кількості використовуваних пристроїв. Аналогічно можна відновлювати резервну копію паралельно з кількох пристроїв.
Дзеркальний набір носіїв: якщо ви застосовуєте дзеркальні набори носіїв, то у кожного з ваших наборів носіїв може бути чотири дзеркала. У разі використання дзеркального набору носіїв операція резервування виконує запис на кілька груп пристроїв резервування. Кожна група пристроїв резервування утворює дзеркало дзеркального набору носіїв. У кожному дзеркальному наборі носіїв необхідно використовувати ті самі кількість і тип фізичних пристроїв резервування, причому всі пристрої повинні мати однакові властивості.
Резервування знімка: це найшвидший спосіб резервування баз даних. Резервна копія знімка – це спеціальна резервна копія, що створюється майже миттєво за допомогою рішення зі створення знімків на основі повного дублювання (split-mirror) від незалежного постачальника обладнання та програмного забезпечення.
Резервування знімків зводить до мінімуму або взагалі до нуля використання ресурсів SQL Server для виконання резервування. Воно особливо корисно у разі баз даних середнього та великого розміру, для яких доступність грає вирішальну роль. Можна час від часу здійснювати резервування та відновленнязнімка за секунди, не уповільнюючи або майже не уповільнюючи роботу сервера.
Низький пріоритет стиснення при резервуванні: резервування баз даних із застосуванням нової функції стиснення при резервуванні може збільшити використання процесора. Будь-яке споживання ресурсів процесора, яке викликається процесом стиснення, може негативно вплинути на паралельні операції. Тому, наскільки це можливо, намагайтеся виконувати резервування з низьким пріоритетом стиснення: за допомогою регулятора ресурсів (resource governor) обмежуйте використання процесора, щоб не допустити конкуренцію за ресурси процесора.
Резервування Full, Differential та Log: якщо вибрано модель резервування бази даних Full, використовуйте комбінацію різних видів резервування (Full, Differential та Log — повне, різницеве та журналів транзакцій). Це дозволить мінімізувати кількість резервних копій, необхідних для приведення бази даних до стану на момент збою.
Резервування файлів/файлових груп: Використовуйте резервування файлів/файлових груп та резервування журналів транзакцій. Ці методики дозволять вам резервувати або відновлювати лише файли, які містять необхідні дані. Оскільки не виконується резервування чи відновлення всієї бази даних, відповідні операції проходять набагато швидше.
Використовуйте інший диск для резервування: Не використовуйте для цілей резервування той самий фізичний диск, що й диск, що містить файли бази даних або журналу транзакцій. При використанні того ж фізичного диска скорочується не тільки продуктивність, а й можливість успішного відновлення згідно з планом.
Запам'ятайте, що потрібно вибрати кілька методик і тактик резервування та відновлення, найкращепридатних для вашої конфігурації. Це обов'язковий аспект будь-якої стратегії роботи з SQL Server.