1. Въведение в SQL Server Висока наличност
Висока наличност в SQL Server отнася се до способността на системата да остане оперативна с минимално време на престой, когато се сблъска с хардуерни повреди, софтуерни проблеми или планирана поддръжка. Значението на високата достъпност не може да бъде надценено. Когато базите данни станат недостъпни, организациите са изправени пред незабавни последици, включително загуба на приходи, намалена производителност и недоволство на клиентите.
Въпреки че термините „висока достъпност“ (HA) и „възстановяване след бедствия“ (DR) често се използват взаимозаменяемо, те са насочени към различни сценарии на отказ. HA се фокусира върху минимизиране на времето за престой, причинено от локализирани повреди, като например сривове на сървъри или инстанции, докато DR е проектирано за възстановяване от мащабни бедствия, които засягат цял център за данни или регион.
Две критични показатели ръководят планирането на HA:
- Целевото време за възстановяване (RTO) определя максимално приемливото време на престой след повреда
- Целевата точка на възстановяване (RPO) определя максимално допустимата загуба на данни.
Наличността обикновено се измерва в „деветки“: 99.9% (три деветки) позволява 8.76 часа престой годишно, 99.99% (четири деветки) позволява 52.6 минути, а 99.999% (пет деветки) ограничава времето на престой до само 5.26 минути годишно.
2. SQL Server Преглед на решенията с висока достъпност
2.1 Категории HA решения
SQL Server Решенията с висока наличност могат да бъдат категоризирани по няколко измерения:
- Защити на ниво инстанция спрямо база данни: Защитите на ниво инстанция, като например инстанции на клъстери при срив, защитават цели инстанции, включително всички бази данни и сървърни обекти, докато защитите на ниво база данни, като например групи за достъпност Always On, защитават конкретни бази данни.
- Синхронно срещу асинхронно движение на данни: Синхронното движение на данни гарантира нулева загуба на данни, но може да доведе до латентност, докато асинхронното движение оптимизира производителността, но приема възможна загуба на данни.
- Автоматично срещу ръчно превключване при срив: Автоматичното превключване при срив минимизира времето за престой без ръчна намеса, докато ръчното превключване осигурява по-голям контрол, но изисква действия от администратора.
2.2 Често срещани решения за висока достъпност
SQL Server предоставя осем основни решения за висока достъпност, всяко от които е насочено към специфични сценарии:
- Винаги включени групи за наличност
- Ограничени групи за достъпност
- Разпределени групи за достъпност
- Екземпляри на клъстери за отказоустойчивост
- SQL Server копиране
- Доставка на дървени трупи
- Огледално отразяване на база данни
- Връзка към управляван екземпляр
3. Групи за винаги включена наличност
Групите за винаги включена наличност представляват SQL Serverводещото решение за висока достъпност и възстановяване след бедствия на ниво база данни, представено през SQL Server 2012. Това позволява на групи от бази данни да се прехвърлят при срив заедно като едно цяло, като същевременно предоставя четими вторични реплики за разтоварване на заявки.
Основни функции
- Поддръжка на до 9 реплики общо (1 основна + 8 вторични)
- До 5 реплики в режим на синхронно записване (1 основна + 4 вторични)
- Автоматично превключване на резервни устройства с нулева загуба на данни в синхронен режим
- Четливи вторични реплики за разтоварване на заявки
- Разтоварване на резервно копие към вторични реплики
- Слушател на група за достъпност за автоматично маршрутизиране на връзките
- Маршрутизиране само за четене за заявки за балансиране на натоварването
- Няколко бази данни се отказват заедно като група
Стъпки на внедряване
- Конфигуриране на клъстер за отказоустойчиво клъстериране на Windows Server (WSFC) или Linux Pacemaker
- Активиране на функцията „Групи за достъпност винаги включени“ на всички SQL Server случаи
- Уверете се, че базите данни използват модел за пълно възстановяване и имат пълни резервни копия
- Създаване на крайни точки за огледално отразяване на базата данни във всяка реплика
- Създаване на група за достъпност и добавяне на бази данни
- Конфигурирайте първични и вторични реплики с желаните режими
- Създаване и конфигуриране на слушателя на групата за достъпност
- Конфигурирайте маршрутизиране само за четене, ако използвате четими вторични сървъри
- Тествайте процедурите за превключване на резервни устройства и проверете свързаността на приложенията
Най-добър за
- Критично важни бази данни, изискващи максимално време на работа
- Организации, нуждаещи се както от локална висока достъпност, така и от географско възстановяване от катастрофи (DR).
- Среди, изискващи възможности за мащабиране на четене
- Приложения, които се възползват от разтоварване на заявки за отчитане
- Бази данни, изискващи защита от нулева загуба на данни
- Приложения с множество бази данни, изискващи координирано превключване при срив
Предимства
- Нулева загуба на данни със синхронен режим на запис
- Автоматичното превключване при срив минимизира времето за престой (обикновено секунди)
- Четливите вторични кодове намаляват натоварването на първичните
- Няма изискване за споделено съхранение
- Поддържа както Windows, така и Linux платформи
- Географско разпределение за възстановяване след бедствия
- Резервните операции могат да бъдат прехвърлени на вторични сървъри
- Низовете за свързване на приложението остават непроменени след превключване на резервни копия
Недостатъци
- Изисква Enterprise Edition за пълна функционалност
- Стандартно издание, ограничено до Basic AG (1 база данни, 1 вторична база данни, без четлива вторична база данни)
- Сложна конфигурация и управление
- Изисква клъстерна инфраструктура (WSFC или Pacemaker)
- Обектите на ниво инстанция (входи, задачи) изискват ръчна синхронизация
- Синхронният режим може да доведе до забавяне на транзакциите
- Цени за лицензиране на множество сървъри
Източници
- SQL Server Групи за винаги налична достъпност: Пълно ръководство
- Официален документ на Microsoft: Общ преглед на групите за достъпност Always On (SQL Server)
4. Ограничени групи за достъпност
Ограничени групи за достъпност, въведени в SQL Server 2022, разширяват традиционните групи за достъпност „Always On“, като автоматично синхронизират обекти на ниво инстанция между реплики, елиминирайки необходимостта от ръчно репликация на влизания, задачи и други обекти на ниво сървър.
Основни функции
- Автоматична синхронизация на обекти на ниво инстанция (входи, потребители, роли)
- SQL Server Задачите на агентите са репликирани във всички реплики
- Разрешенията за база данни се синхронизират автоматично
- Включени са всички възможности на Always On AG
- Опростено превключване при срив с пълна репликация на средата
- Поддръжка както за Windows, така и за Linux платформи
Стъпки на внедряване
- Уверете се, SQL Server 2022 г. или по-късно във всички случаи
- Конфигуриране на клъстерна инфраструктура на WSFC или Pacemaker
- Активиране на функцията „Винаги включено“ във всички случаи
- Създаване на ограничена група за достъпност с опцията CONTAINED
- Добавяне на бази данни към съдържащата се AG
- Създаване на входни данни и задачи в контекста на AG
- Конфигуриране на слушателя и тестване на превключване при срив
Най-добър за
- Организации, които искат опростена администрация на AG
- Среди с чести тестове или операции за превключване при срив
- Приложения, изискващи много обекти на ниво инстанция
- НОВ SQL Server 2022+ внедрявания
- Екипи, търсещи намалена конфигурация след отказ
Предимства
- Елиминира ръчното синхронизиране на влизания и задачи
- По-бързо и по-надеждно превключване при срив
- Намалени административни разходи
- Приложенията работят веднага след превключване на резервни устройства
- Опростени процедури за възстановяване след бедствия
- Включени са всички традиционни предимства на AG
Недостатъци
- Изисква SQL Server 2022 или по-късно
- За пълна функционалност е необходимо Enterprise Edition
- Не може да се конвертират съществуващи традиционни групи за управление (AG) в ограничени групи за управление.
- Всички реплики трябва да поддържат функцията за ограничена AG
- Допълнителна сложност в сравнение с традиционните AGs
Източници
5. Разпределени групи за достъпност
Разпределени групи за достъпност, въведени през SQL Server 2016 г., дават възможност за архитектура на „Група за наличност на групи за наличност“, свързваща две независими групи за достъпност в отделни клъстери за усъвършенствани сценарии за възстановяване след бедствия и миграция.
Основни функции
- Свързва две независими групи за наличност
- Всяка AG поддържа свой собствен независим клъстер
- Поддръжка на различни платформи (от Windows към Linux)
- Кръстосана репликация на клъстери без споделено членство в клъстери
- Единият AG служи като основен, другият като вторичен
- Поддържа както синхронни, така и асинхронни режими
- Географско разпределение по региони или континенти
Стъпки на внедряване
- Създаване и конфигуриране на първа група за достъпност (основна DAG)
- Създаване и конфигуриране на втора група за достъпност (вторична DAG)
- Създаване на разпределена AG, свързваща двете AG
- Конфигуриране на синхронизация на данни между AGs
- Настройте слушател на всяка AG за свързаност на приложенията
- Конфигуриране на политики за превключване при срив и процедури за тестване
- Проверка на комуникацията и репликацията между клъстерите
Най-добър за
- Възстановяване след бедствия в множество региони, обхващащо независими центрове за данни
- Междуплатформена миграция от Windows към Linux или обратно
- Хибридни облачни сценарии, свързващи локално с Azure
- Надстройки на основни версии, изискващи удължени прозорци за миграция
- Организации с множество независими клъстери за превключване на резервни копия
- Глобални предприятия, нуждаещи се от репликация, обхващаща целия континент
Предимства
- Разделя клъстерните зависимости между сайтовете
- Позволява истинско географско разпределение
- Поддържа междуплатформени сценарии
- Всяка AG може да се превключи независимо от резервната система.
- Идеален за сложни миграционни проекти
- Не се изисква споделена клъстерна инфраструктура
- Може да обхваща различни домейни на Windows или дистрибуции на Linux
Недостатъци
- Изисква Enterprise Edition
- Висока сложност при конфигуриране и управление
- Изисква задълбочено разбиране както на клъстеризацията, така и на AG технологията
- По-трудно за отстраняване на неизправности от стандартните AGs
- Допълнителна латентност за междурегионални сценарии
- Изисква внимателно планиране на процедурите за превключване при срив
Източници
6. Инстанции на клъстери за отказоустойчивост (FCI)
Инстанциите на Failover Cluster осигуряват висока достъпност на ниво инстанция, използвайки споделено хранилище и Windows Server Failover Clustering, което позволява автоматично превключване на целия сървър при срив. SQL Server екземпляр, включващ всички бази данни и обекти на ниво сървър.
Основни функции
- Защита на ниво инстанция (всички бази данни се прехвърлят при срив едновременно)
- Активно-пасивна конфигурация със споделено хранилище
- Име на виртуална мрежа (VNN) за прозрачно превключване при срив
- Автоматично превключване при отказ на активен възел
- Нулева загуба на данни (едно копие на данните)
- Включени обекти на ниво сървър (входи, задачи, свързани сървъри)
- Поддържа всички SQL Server модели за възстановяване
Стъпки на внедряване
- Конфигуриране на клъстер за отказоустойчивост на Windows Server (WSFC)
- Настройване на споделено хранилище (SAN, SMB, Storage Spaces Direct)
- Конфигуриране на настройките за кворум на клъстера
- Инсталирайте SQL Server като екземпляр на клъстер за отказоустойчивост на първия възел
- Добавете допълнителни възли към FCI
- Конфигуриране на име и IP адрес на виртуална мрежа
- Тестване на превключване на резервни части между клъстерни възли
- Конфигурирайте клиентските приложения да използват VNN
Най-добър за
- Организации със съществуваща инфраструктура за споделено съхранение
- Среди, изискващи защита на ниво инстанция
- Локална висока достъпност в рамките на един център за данни
- Приложения, изискващи всички бази данни да се прехвърлят при срив едновременно
- Сценарии, при които обекти на ниво сървър трябва да бъдат защитени
- Само за Windows среди (Linux не се поддържа за FCI)
Предимства
- Пълна защита на ниво инстанция
- Гарантирана нулева загуба на данни
- Възможност за автоматично превключване при срив
- Няма нужда да синхронизирате вход или задачи
- Едно копие на данните намалява разходите за съхранение
- Поддържа всички модели за възстановяване
- Низовете за свързване на приложението са непроменени след превключване на резервни части
Недостатъци
- Изисква скъпа инфраструктура за споделено съхранение
- Споделеното хранилище е единствена точка на отказ
- Няма възможност за мащабиране на четене (само един активен възел)
- Ограничено географско разпространение поради ограничения за съхранение
- Стандартното издание е ограничено до 2 възела
- Само за Windows (без поддръжка на Linux)
- По-дълго време за превключване при срив в сравнение с AG (обикновено минути)
- Сложна конфигурация и управление на съхранението
Източници
- SQL Server Клъстер за отказоустойчивост: Пълно ръководство за администратор на бази данни
- Официален документ на Microsoft: Инстанции на клъстери за резервно превключване Always On (SQL Server)
7. SQL Server копиране
SQL Server Репликацията е технология за разпространение на данни, която копира и разпределя данни между множество сървъри, поддържайки различни топологии - от просто еднопосочно разпространение до сложни конфигурации с множество мастери, въпреки че се използва предимно за отчитане, а не като чисто решение за висока достъпност.
Основни функции
- Четири типа репликация: моментна снимка, транзакционна, сливане, peer-to-peer
- Избор на подробни данни (конкретни таблици, колони, редове)
- Поддръжка за множество абонати от един издател
- Предлагат се двупосочни и мултимастер топологии
- Гъвкави опции за планиране и синхронизация
- Разрешаване на конфликти за репликация с сливане
- Възможности за филтриране с предикати WHERE
Стъпки на внедряване
- Конфигуриране на дистрибуторски сървър (може да бъде отделен или същият като издателя)
- Създаване на публикация в базата данни на издателя
- Изберете тип репликация въз основа на изискванията
- Изберете статии (таблици, изгледи, съхранени процедури) за репликиране
- Конфигурирайте филтриране и трансформация на данни, ако е необходимо
- Настройване на бази данни за абонати
- Създаване на абонаменти (push или pull)
- Инициализиране на абонаменти със snapshot
- Мониториране на агенти за репликация и латентност
Най-добър за
- Разпространение на данни към множество сървъри за отчитане
- Сценарии за мащабиране на четене с отчетни натоварвания
- Частично разпространение на данни към отдалечени обекти
- Консолидиране на данни от множество източници
- Понякога свързани сценарии (репликация със сливане)
- Поддържаща роля в стратегията за възстановяване след бедствия
Предимства
- Гранулиран контрол върху репликираните данни
- Поддържат се множество абонати
- Гъвкави опции за топология
- Може да репликира конкретни таблици или колони
- Филтрирането намалява мрежовия трафик
- Поддържа хетерогенна репликация (SQL Server към Oracle)
- Работи със стандартното издание
Недостатъци
- Няма възможност за автоматично превключване при срив
- Сложна конфигурация и управление
- Потенциал за конфликти при репликация (сливане и peer-to-peer)
- Закъснение при синхронизиране на данни
- Промените в схемата изискват внимателна координация
- Не е проектирано като основно решение за висока достъпност (HA).
- Отстраняването на неизправности може да бъде трудно
- Peer-to-Peer изисква Enterprise Edition
Източници
- SQL Server Репликация: Пълно ръководство за администратор на бази данни
- Официален документ на Microsoft: SQL Server копиране
8. Доставка на дървени трупи
Log Shipping предоставя решение за възстановяване след бедствия в режим на готовност и висока достъпност чрез автоматизирани процеси на архивиране, копиране и възстановяване на регистрационни файлове на транзакции, предлагайки прост и рентабилен подход за поддържане на синхронизирани вторични бази данни.
Основни функции
- Автоматизирани задачи за архивиране, копиране и възстановяване чрез SQL Agent
- Поддръжка за множество вторични сървъри
- Конфигурируеми интервали за архивиране и възстановяване
- Режимът STANDBY позволява достъп само за четене до вторичните
- Забавено възстановяване на лог файлове за защита от грешки
- Мониторинг на сървър за централизирано наблюдение
- Поддръжка на компресиране на регистрационни файлове на транзакции
Стъпки на внедряване
- Уверете се, че основната база данни използва модел за пълно възстановяване
- Създаване на пълно резервно копие на основната база данни
- Възстановяване на резервно копие на вторичен сървър с NORECOVERY
- Конфигуриране на доставката на лог файлове в основната база данни
- Посочете споделена папка за архивиране, достъпна за всички сървъри
- Конфигуриране на графика за задачи за архивиране на основната
- Конфигуриране на задания за копиране и възстановяване на вторичния сървър
- По желание конфигурирайте сървъра за мониторинг
- Тестови процедури за превключване при срив
Най-добър за
- Рентабилни решения за възстановяване след бедствия
- Организации с лиценз за Standard Edition
- Сценарии, допускащи минути загуба на данни
- Среди, удобни за ръчно превключване на резервни копия
- Забавено възстановяване за нуждите от защита от грешки
- Отчитане на натоварванията в режим STANDBY
- Прости изисквания за DR без сложна инфраструктура
Предимства
- Лесна конфигурация и работа
- Ниска цена (поддръжка на стандартното издание)
- Поддържат се множество вторични сървъри
- Конфигурируемото забавяне предпазва от логически грешки
- Отчитане само за четене в режим на готовност
- Толерира висока мрежова латентност
- Минимално въздействие върху основния сървър
- Добре установена, доказана технология
Недостатъци
- Няма възможност за автоматично превключване при срив
- Трябва да се конфигурира отделно за всяка база данни
- Забавяне на синхронизацията (минути до часове)
- Потенциална загуба на данни въз основа на интервала на архивиране
- Ръчното превключване на резервни части увеличава RTO (време на възстановяване)
- Изисква SQL Server Агент, работещ на всички сървъри
- Вторичните бази данни не са достъпни по време на възстановяване на лог файлове
- Приложенията изискват промени в низа за свързване след превключване на резервни копия
Източници
- SQL Server Доставка на трупи: Пълно ръководство за администратори на бази данни
- Официален документ на Microsoft: Относно изпращането на лог файлове (SQL Server)
9. Огледално копиране на база данни
Огледалното отразяване на базата данни е остаряло решение за висока достъпност на ниво база данни, което не е получило подобрения оттогава. SQL Server 2012, въпреки че остава налична в текущите версии. Microsoft силно препоръчва мигриране към групи за достъпност „Always On“ за всички нови внедрявания.
Основни функции
- Архитектура на главния и огледалния сървър
- Допълнителен сървър-свидетел за автоматично превключване на резервни части
- Два режима на работа: Висока безопасност и Висока производителност
- Поддръжка на синхронна и асинхронна работа
- Възможност за автоматично поправяне на страници
- Защита на ниво база данни
- Поддръжка на криптиране за предаване на данни
Стъпки на внедряване
- Уверете се, че базата данни използва модел за пълно възстановяване
- Създайте пълно архивиране и възстановяване на огледален сървър с NORECOVERY
- Създаване на огледални крайни точки на принципала и огледалото
- Конфигуриране на сертификати за удостоверяване
- Установяване на огледална сесия между сървърите
- По желание конфигурирайте сървър-свидетел за автоматично превключване на резервни копия
- Задаване на режим на работа (Висока безопасност или Висока производителност)
- Тестови процедури за превключване при срив
Най-добър за
- Стари системи, които вече използват огледално генериране на база данни
- Запазване на съществуващите конфигурации, докато миграцията е възможна
- Не се препоръчват други сценарии (функцията е остаряла)
Предимства
- Бързо автоматично превключване при срив в режим на висока безопасност със свидетел
- Нулева загуба на данни в режим на висока безопасност
- Автоматично поправяне на страници от партньор
- По-лесно от групи за достъпност за единична база данни
- Поддържа криптиране за предаване
- Постоянни надстройки с минимален престой
Недостатъци
- Оттеглено от SQL Server 2012 (може да бъде премахнато)
- Конфигурация и превключване на база данни
- Няма огледало за четене (няма възможност за мащабиране на четене)
- Всяка база данни се превключва независимо от срив
- Необходими са актуализации на низовете за свързване след превключване на резервни копия
- Ограничено до два сървъра (главен и огледален)
- Няма подобрения или нови функции
- Microsoft препоръчва миграция към Always On AG
Източници
10. Връзка към управляван екземпляр
Връзката с управляван екземпляр създава хибридна връзка между SQL Server и управляван екземпляр на Azure SQL, използващ технология за разпределени групи за достъпност, което позволява репликация на данни в почти реално време за сценарии за възстановяване след бедствия, миграция и интеграция в облака.
Основни функции
- Репликация в почти реално време с помощта на разпределена AG технология
- Еднопосочна репликация (SQL Server 2016-2019 до Azure)
- Двупосочна репликация с връщане след отказ (SQL Server 2022 +)
- Една база данни на връзка (поддържат се множество връзки)
- Четливи реплики в управляван екземпляр на Azure SQL
- Опция за пасивна DR реплика без лиценз
- Онлайн миграция с минимален престой
Стъпки на внедряване
- Подгответе SQL Server среда (VPN или ExpressRoute към Azure)
- Конфигуриране на управляван екземпляр на Azure SQL
- Активиране на функцията „Винаги включена AG“ SQL Server
- Създаване на крайна точка за огледално отразяване на базата данни
- Обмен на сертификати между SQL Server и МИ
- Създаване на връзка към управляван екземпляр с помощта на SSMS или скриптове
- Валидиране на репликацията и синхронизацията
- Конфигурирайте маршрутизиране само за четене, ако използвате за мащабиране на четене
- Тестови процедури за превключване при срив
Най-добър за
- Хибридно възстановяване след бедствия с облачно базирана вторична среда
- Онлайн миграция към управляван екземпляр на Azure SQL
- Прехвърляне на анализи и отчети към Azure
- Организации, които прилагат хибридна облачна стратегия
- Сценарии, изискващи интеграция с услуги на Azure
- Оптимизация на разходите с безлицензионен пасивен DR
Предимства
- Най-производителна миграция към Azure с минимално време на престой
- Истинска онлайн миграция към ниво „Критични за бизнеса“
- Двупосочно превключване при срив с SQL Server 2022 +
- Пасивната DR реплика без лиценз намалява разходите
- Интеграция с услуги на Azure без пълна миграция
- Възможност за мащабиране на четене с помощта на реплики на Azure
- Автоматизирани резервни копия от страна на Azure
- Географско разпределение в регионите на Azure
Недостатъци
- Ограничение от една база данни на връзка
- Не може да се използва с групи за превключване на резервни копия в MI
- Системните бази данни не са репликирани
- Обектите на ниво инстанция изискват ръчна синхронизация
- SQL Server 2016-2019 само еднопосочно (без връщане при отказ)
- Цени на Azure за управляван екземпляр
- Изисквания за мрежова свързаност (VPN/ExpressRoute)
- Ограничения на функциите (файлови таблици, файлови потоци не се поддържат)
Източници
11. Сравнение на решения с висока достъпност
11.1 Таблица за сравнение на характеристиките
| Особеност | Винаги на AG | Съдържащ AG | Разпределена AG | FCI | копиране | Доставка на дървени трупи | Mirroring | MI Link |
|---|---|---|---|---|---|---|---|---|
| Издание | Вход/Стандарт | Вход/Стандарт | Развитие | Вход/Стандарт | Вход/Стандарт | Вход/Стандарт | Вход/Стандарт | Вход/Стандарт |
| Степен на защита | База данни | База данни+Екземпляр | База данни | инстанция | База данни/Обекти | База данни | База данни | База данни |
| Синхронизиране на данни | Синхронизиране/Асинхронизиране | Синхронизиране/Асинхронизиране | Синхронизиране/Асинхронизиране | Обща | Асинхронизиране | Асинхронизиране | Синхронизиране/Асинхронизиране | Асинхронизиране |
| Автоматично превключване при срив | Да | Да | Да | Да | Не | Не | Да | Не |
| Мащаб за четене | Да | Да | Да | Не | Да | ограничен | Не | Да |
| OTR | секунди | секунди | секунди | минути | наръчник | наръчник | секунди | наръчник |
| RPO | Нула/Мин | Нула/Мин | Нула/Мин | нула | Минимум | минути | Нула/Мин | Минимум |
| Състояние на поддръжката | Активен | Активен | Активен | Активен | Активен | Активен | Отхвърлена | Активен |
11.2 Изберете HA решение
Когато избирате решение, вземете предвид следните фактори:
- Бюджетните съображения оказват значително влияние върху избора на решение: Изискванията за Enterprise Edition влияят върху разходите за лицензиране, докато нуждите от инфраструктура варират от скъпо споделено хранилище за FCI до масови сървъри за групи за достъпност.
- Сложността се различава съществено: Доставката на лог файлове предлага най-лесното внедряване, докато Разпределените групи за достъпност изискват обширни експертни познания.
- Изискванията за RTO (време на престой) определят избора на технологии. Необходими са секунди престой. Групи за винаги включена наличност или FCI с автоматично превключване при срив. Толерансът от минути позволява решения за ръчно превключване при срив, като например доставка на лог файлове.
- Изискванията за RPO са също толкова важни: нулевата загуба на данни изисква синхронни решения, докато толерансът от минути позволява изпращане на лог файлове.
- Ограниченията на инфраструктурата, нуждите от мащабиране на четене, изискванията за географско разпределение и хибридните сценарии в облака влияят върху избора на оптимално решение.
12. Най-добри практики за SQL Server Висока наличност
12.1 Планиране и проектиране
Оценете бизнес изискванията чрез внимателен RTO и RPO анализ за всяка база данни. Изберете подходящи решения, съответстващи на изискванията, вместо да се придържате към най-сложните опции по подразбиране. Планирайте както локално високодостъпно, така и географско възстановяване след бедствия, използвайки многопластови подходи. Документирайте изчерпателно архитектурата, включително мрежови диаграми, процедури за превключване на резервни копия и наръчници за възстановяване.
12.2 Насоки за изпълнение
Тествайте редовно процедурите за превключване на резервни части чрез планирани тестове и симулирани повреди, за да ги валидирате. SQL Server решения с висока наличност и готовност на екипа. Следете състоянието и производителността непрекъснато, използвайки SQL Serverвградените инструменти като SQL Server Profiler и DMVs. Конфигурирайте цялостно предупреждение за забавяне на синхронизацията, събития за превключване при срив и влошаване на състоянието. Поддържайте SQL Server стратегии за архивиране въпреки внедряването на HA, тъй като резервните копия остават последната линия на защита срещу логическа повреда и случайни изтривания. Поддържайте системите актуални с кумулативни актуализации, корекции за сигурност и актуализации на фърмуера. Валидирайте периодично процедурите за възстановяване чрез действителни възстановявания и тестване на приложения и знайте как да се справяте със сценарии като... бази данни, заседнали в режим на възстановяване.
12.3 Мониторинг и поддръжка
Използвайте инструменти като SQL Server Дейност Monitor, SQL Server Performance Monitorи динамични изгледи за управление, широкообхватно за наблюдение на състоянието и изпълнение DBCC CHECKDB редовно, за да проверявате целостта на базата данни. Използвайте таблото за управление Always On за визуална оценка на състоянието на групата за достъпност. Следете внимателно забавянето на синхронизацията, особено за асинхронни реплики и доставка на лог файлове. Проследявайте щателно събитията за превключване при срив, използвайки SQL Server Разширени събития и анализирайте причините за моделите. Определете базови нива на производителност за нормална работа и наблюдавайте отклоненията, показващи потенциални проблеми. Извършвайте редовни прегледи на планирането на капацитета, като гарантирате, че инфраструктурата поддържа нарастващите натоварвания.
13. ЧЗВ
В: Каква е разликата между висока достъпност и възстановяване след бедствие в SQL Server?
A: Високата достъпност минимизира времето за престой при локални повреди в центъра за данни, обикновено с автоматично превключване при срив и RTO за секунди или минути. Възстановяването след бедствия предпазва от регионални катастрофи, обикновено с ръчно превключване при срив и по-дълги RTO, но обхваща събития, засягащи цели съоръжения.
В: Каква е разликата между решенията с висока достъпност (HA) и решенията за мащабиране на четене?
A: Решенията за висока достъпност гарантират, че базите данни остават достъпни по време на повреди, като се фокусират върху времето за работа и възможностите за автоматично превключване при срив. Решенията за мащабиране на четене подобряват производителността на заявките, като разпределят натоварванията само за четене между множество реплики на бази данни, като се фокусират върху пропускателната способност и времето за реакция. Въпреки че те служат за различни цели, една и съща технология, като Always On Availability Groups, може да предостави и двете предимства едновременно: четливите вторични реплики предлагат възможности за мащабиране на четене, като същевременно служат като цели за превключване при срив за висока достъпност.
Въпрос: Кое SQL Server Решението с висока наличност е най-доброто за моите нужди?
A: Най-доброто решение зависи от целите за RTO и RPO, бюджета, наличността на изданието, инфраструктурата и експертния опит. Групите за наличност „Always On“ са подходящи за повечето корпоративни сценарии, докато доставката на лог файлове работи добре за среди, чувствителни към разходи. Оценете изискванията спрямо сравнителната таблица.
В: Групите за наличност „Always On“ изискват ли Enterprise Edition?
A: Standard Edition поддържа Basic Availability Groups със значителни ограничения: една база данни на група, една вторична реплика и никаква четлива вторична база данни. Пълната функционалност, включително множество бази данни, осем вторични бази данни и четливи реплики, изисква Enterprise Edition.
В: Мога ли да използвам доставката на трупи с SQL Server Стандартно издание?
A: Да, доставката на лог файлове е напълно поддържана в Standard Edition, което я прави привлекателно и рентабилно решение за възстановяване след бедствия за организации без лиценз за Enterprise Edition.
В: Каква е разликата между групите за достъпност „Винаги включени“ и огледалното създаване на база данни?
A: Огледалното създаване на база данни е остаряло и работи на ниво отделна база данни без достъп за четене на вторични бази данни. Групите за достъпност „Always On“ поддържат групи от бази данни, до осем вторични бази данни, реплики с възможност за четене и подобрено наблюдение. Microsoft препоръчва мигриране към „Always On“.
В: Как да избера между екземпляри на клъстери за отказоустойчивост и групи за достъпност?
A: Изберете FCI за защита на ниво инстанция със споделена инфраструктура за съхранение. Изберете Availability Groups (Групи за достъпност) за защита на ниво база данни, възможности за мащабиране на четене и географско разпределение без споделено съхранение. Организациите често комбинират и двете за цялостна защита.
В: Мога ли да комбинирам няколко SQL Server решения с висока наличност?
A: Да, комбинирането на решения е често срещано. FCI могат да служат като реплики на групи за достъпност, осигурявайки локална висока достъпност на ниво инстанция и географско аварийно възстановяване на ниво база данни. Доставката на лог файлове може да допълни групите за достъпност за допълнителна отдалечена защита. Тествайте щателно комбинираните конфигурации.
В: Каква е разликата между синхронна и асинхронна репликация?
A: Синхронната репликация изчаква вторично потвърждение преди да се ангажира, което гарантира нулева загуба на данни, но потенциално води до латентност. Асинхронната репликация протича без изчакване, оптимизирайки производителността, но създавайки възможна загуба на данни по време на превключване при срив.
В: Все още ли ми трябват резервни копия, ако имам SQL Server високата достъпност е конфигурирана?
A: Абсолютно да. Високата достъпност предпазва от хардуерни повреди, но не може да предпази от логическа повреда, случайни изтривания или злонамерени действия, които се репликират към всички копия. Резервните копия остават от съществено значение за възстановяване в определен момент и за съответствие с изискванията.
В: Все още ли ми трябват резервни копия, ако имам SQL Server високата достъпност е конфигурирана?
A: Абсолютно да. Високата достъпност предпазва от хардуерни повреди, но не може да предпази от повреда на базата данни, случайни изтривания или злонамерени действия. Резервните копия остават от съществено значение за възстановяване в определен момент и изискванията за съответствие. В случаите, когато файловете на базата данни се повредят и резервните копия са недостъпни или също са повредени, се използват специализирани... Софтуер за поправка на SQL бази данни може да помогне за възстановяване на данни от повредени MDF, NDF и резервни файлове.
В: Какво е ограничена група за достъпност и как се различава от обикновената група за достъпност?
A: Ограничени групи за достъпност, въведени в SQL Server 2022, автоматично синхронизирайте обекти на ниво инстанция, като например данни за вход, задания и метаданни. Стандартните групи за достъпност синхронизират само обекти на база данни, което изисква ръчно репликация на обекти на инстанции.
В: Мога ли да репликирам данни от SQL Server към управляван екземпляр на Azure SQL?
A: Да, Managed Instance Link осигурява хибридна репликация между SQL Server и Лазур. SQL Server 2016-2019 поддържа еднопосочна репликация, докато SQL Server 2022+ позволява двупосочна репликация с връщане след срив за сценарии за възстановяване след бедствия, миграция и хибридни сценарии.
В: Какво се случва с SQL Server Задачи на агенти по време на превключване на резервни операции?
A: При традиционните групи за достъпност, заданията трябва да се създават ръчно върху вторични реплики. Ограничени групи за достъпност (SQL Server 2022+) автоматично синхронизират задания. Инстанциите на клъстери за превключване на резервни копия включват задания като част от защитата на ниво инстанция.
14. заключение
SQL Server предоставя цялостни решения с висока наличност, които отговарят на разнообразни изисквания - от ведомствени бази данни до критично важни корпоративни системи. Всяко решение предлага различни възможности и компромиси, които администраторите на бази данни трябва да разбират, за да вземат информирани решения.
Групите за достъпност „Винаги включени“ представляват водещата технология за съвременни внедрявания, като групите за ограничена достъпност опростяват администрирането, а разпределените групи за достъпност позволяват сложни междуплатформени сценарии. Инстанциите на клъстери за прехвърляне на резервни копия продължават да обслужват нуждите от защита на ниво инстанция, докато доставката на регистрационни файлове остава актуална за сценарии, чувствителни към разходи. Връзката с управлявани инстанции отваря възможности за хибриден облак, свързвайки локално с мрежата. SQL Server с Azure.
Съчетаването на решения със специфичните бизнес нужди представлява критичният фактор за успех. Няма универсален подход. Организациите трябва внимателно да оценят изискванията за RTO и RPO, бюджетните ограничения, инфраструктурните възможности и административния опит. Често най-добрата архитектура комбинира множество решения за цялостна защита. Помислете как вашата HA стратегия се съгласува с по-широките планове за внедряване на облака и се консултирайте със специални статии за подробни насоки за внедряване, за да гарантирате, че... SQL Server Инфраструктурата осигурява надеждността, от която вашият бизнес се нуждае.
За автора
Юан Шенг е старши администратор на бази данни (DBA) с над 10 години опит в SQL Server среди и управление на корпоративни бази данни. Той е разрешил успешно стотици сценарии за възстановяване на бази данни във финансови услуги, здравеопазване и производствени организации.
Юан е специализиран в SQL Server възстановяване на бази данни, решения за висока достъпност и оптимизация на производителността. Неговият богат практически опит включва управление на многотерабайтови бази данни, внедряване на групи за достъпност Always On и разработване на автоматизирани стратегии за архивиране и възстановяване за критично важни бизнес системи.
Чрез техническата си експертиза и практичен подход, Юан се фокусира върху създаването на изчерпателни ръководства, които помагат на администраторите на бази данни и ИТ специалистите да решават сложни задачи. SQL Server предизвикателствата ефикасно. Той е в крак с най-новото SQL Server издания и развиващите се технологии за бази данни на Microsoft, като редовно тества сценарии за възстановяване, за да гарантира, че препоръките му отразяват най-добрите практики в реалния свят.
Имате въпроси относно SQL Server възстановяване или имате нужда от допълнителни насоки за отстраняване на проблеми с базата данни? Юан приветства обратна връзка и предложения за подобряване на тези технически ресурси.