Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Организация резервного копирования AlwaysOn / 14 сообщений из 14, страница 1 из 1
27.12.2017, 12:51
    #39576734
AngryError
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
Доброго времени суток!
Несколько вопросов от начинающего DBA.
Вроде бы первая задача, и ничего сложного в ней нет, но хочется быть уверенным, что все делаю правильно)

В организации имеем 2 кластера AlwaysOn.
Нужно:
1.) Организовать резервное копирование со вторичных реплик (модель FULL). Сейчас делается с первичных.
2.) Нужно иметь по 1-й копии full-бекапа за сегодня на каждом хранилище + по 1-й за вчерашний день. Раз в час делать бекапы логов всех баз
3.) Нужно разделить расписание, ибо сейчас все бекапится в одно время
4.) Базы в кластерах по размерам разные. Есть несколько по 700+ ГБ и с десяток маленьких (10 ГБ)
5.) Иметь представление о состоянии бекапов в течение дня

Что планирую сделать:
1 - настраиваем в AlwaysOn предпочтительную реплику для бекапа (не первичная, но только когда доступны вторичные)
2 - разделяем бекапы по времени. Мониторим среднее время бекапа и распределяем в течение дня
3 - бекапы больших БД ложим на 1-е файловое хранилище, далее планировщиком на самом файловом хранилище копируем вчерашний бекап на второе файловое хранилище. Все что старше, чем вчера - удаляем.
4 - маленькие БД копируем сразу на 2 файловых хранилища
5 - организуем систему оповещений на всех этапах резервного копирования / копирования файлов бекапа

Вопросы:
1 - При бекапе логов со вторичных реплик, размер лога ужимается на всех БД кластера?
2 - В случае, если бекап со вторичной реплики идет несколько часов, на момент окончания бекапа -
какую версию БД мы будем иметь в бекапе? На начало бекапа или на конец. Про обычные бекапы я в курсе - на конец.

Прошу оценить алгоритм, если есть замечания - озвучьте)
спасибо!
...
Рейтинг: 0 / 0
27.12.2017, 13:12
    #39576758
Andy_OLAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
AngryError,

1. Нет. "BACKUP LOG supports only regular log backups (the COPY_ONLY option is not supported for log backups on secondary replicas)" - попробуйте вдумчиво перевести эту фразу. Дифференциальные на репликах тоже использовать не получится.

2. Для понимания ссылка на MSDN , ключевое "AlwaysOn does not ship individual log records, it ships log blocks. The log block is used as a container for log records so by virtue of the log block tracking the individual LSN tracking also occurs".

Ну и конечно A consistent log chain is ensured across log backups taken on any of the replicas (primary or secondary), irrespective of their availability mode (synchronous-commit or asynchronous-commit).
...
Рейтинг: 0 / 0
27.12.2017, 13:15
    #39576761
Andy_OLAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
AngryErrorна момент окончания бекапа -
какую версию БД мы будем иметь в бекапе? На начало бекапа или на конец.
Вы понимаете, что есть нормальная версия БД - которая на первичной, есть отстающая версия БД - на реплике, есть совсем отстающие версии БД - в бэкапах? Используйте ту версию БД, которая нужна для работы конкретного приложения. Родное приложение БД - значит, первичная реплика. Отчетность тяжелая - вторичная реплика. Состояние на вчера-позавчера-месяц назад - развернутая на тестовом сервере из нужного бэкапа.
...
Рейтинг: 0 / 0
27.12.2017, 13:29
    #39576783
aleksrov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
Andy_OLAPAngryError,

1. Нет. "BACKUP LOG supports only regular log backups (the COPY_ONLY option is not supported for log backups on secondary replicas)" - попробуйте вдумчиво перевести эту фразу. Дифференциальные на репликах тоже использовать не получится.

2. Для понимания ссылка на MSDN , ключевое "AlwaysOn does not ship individual log records, it ships log blocks. The log block is used as a container for log records so by virtue of the log block tracking the individual LSN tracking also occurs".

Ну и конечно A consistent log chain is ensured across log backups taken on any of the replicas (primary or secondary), irrespective of their availability mode (synchronous-commit or asynchronous-commit).

А почему в 1 нет?
Имеется ввиду усекается ли лог на других репликах, да, усекается.
Как это происходит:
1) Sec уведомляет Primary о точ что хочет начать Backup и уведомляет Primary
2) Primary пытается наложить BulkOp Lock на нужную базу и если получается отвечает Sec.
3) Sec начинает делать Backup.
4) Когда сделано уведомляет Primary и отправляет Last Backup LSN
5) Priamry обновляет Last Backup LSN и отправялет его другим репликам.
6) Другии реплики усекают журнал на основании этого LSN.
...
Рейтинг: 0 / 0
27.12.2017, 13:34
    #39576789
Andy_OLAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
aleksrov,

Я понимаю, о чем Вы. Но представьте, что на двух вторичных одновременно запущены бэкапы журналов. Будет усечение - будет. А какое. Что означает "на всех БД кластера" - это некорректная постановка вопроса, БД то одна на всех репликах. Поэтому корректный ответ "нет". А теперь ждем более подробного пояснения пункта 2 "разделяем бекапы по времени" от автора темы. И как он собирается контролировать, когда, кто и где запустил бэкап.
...
Рейтинг: 0 / 0
27.12.2017, 13:43
    #39576805
AngryError
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
Andy_OLAP"AlwaysOn does not ship individual log records, it ships log blocks. The log block is used as a container for log records so by virtue of the log block tracking the individual LSN tracking also occurs"

Тут нужно мат.часть подучить. Не совсем понимаю, что имеется ввиду под фразой "BACKUP LOG поддерживает только обычное резервное копирование журналов" и "Обеспечивается последовательная цепочка журналов по всем резервным копиям журналов в любой реплике".

p.s. Получается, что на репликах FULL-бекап делается только в режиме COPY_ONLY.
Исходя из этой логики, чтобы обеспечить полную модель восстановления БД, бекапится нужно только с первичной реплики?
...
Рейтинг: 0 / 0
27.12.2017, 13:55
    #39576819
AngryError
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
Andy_OLAPЧто означает "на всех БД кластера" - это некорректная постановка вопроса, БД то одна на всех репликах. Поэтому корректный ответ "нет". А теперь ждем более подробного пояснения пункта 2 "разделяем бекапы по времени" от автора темы. И как он собирается контролировать, когда, кто и где запустил бэкап.
Странно, но от Вас какая-то агрессия исходит, хотя я предупредил, что я в этом деле новичек.

Про БД - имелось ввиду экземпляры одной БД на всех репликах.
Про разделение бекапов - мониторинг среднего времени выполнения каждого бекапа. После этого нужно распределить время в шедулере, чтобы бекап одной БД по минимуму затрагивал бекап другой.
...
Рейтинг: 0 / 0
27.12.2017, 13:56
    #39576821
Andy_OLAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
AngryError,

Вы для начала для себя определитесь, как будет выглядеть вживую " предпочтительную реплику для бекапа" и " распределяем в течение дня ". У Вас реплики вторичные все синхронные? Или будете с асинхронных снимать, при том, что они от первичной отстают по-разному? Игру в лотерею пока все это напоминает...Для тех, кто потом эти бэкапы будет использовать.
...
Рейтинг: 0 / 0
27.12.2017, 13:59
    #39576823
Andy_OLAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
AngryError После этого нужно распределить время в шедулере, чтобы бекап одной БД по минимуму затрагивал бекап другой.
Да почему сразу агрессия? Я таки сижу тихо, мирно, примус починяю, никого не трогаю.
Вы так фразу изначально написали, что можно было как угодно трактовать. Значит, Вы хотите бэкапиться с реплики, при этом каждую базу отдельным заданием, а время старта задания сдвигать по результату завершения предыдущего задания?

А кто поддерживать это будет? Ну скажем, порядок в течение дня для бэкапов БД3-БД1-БД2, добавилась БД4, куда ее запихнуть? То есть тут подводных камней больше, чем ясных и прямых ответов.
...
Рейтинг: 0 / 0
27.12.2017, 14:03
    #39576825
Andy_OLAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
AngryError,

Коллега, расшифруйте фразу "настраиваем в AlwaysOn предпочтительную реплику для бекапа" - Вы один раз выберете, какая реплика будет использоваться для бэкапов, или несколько раз в течение дня будете определять, какая теперь предпочтительная.
Больше нюансов - больше ответов от участников, как это все настроить.
...
Рейтинг: 0 / 0
27.12.2017, 14:09
    #39576832
AngryError
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
Andy_OLAPВы так фразу изначально написали, что можно было как угодно трактовать.

В первом сообщении я описал задачи, которые передо мной стоят. Более кратко о них:
1) Разгрузить первичную реплику
2) Разгрузить принимающие хранилища, ибо сейчас в 00:00 на них обрушивается шквал бекапов всех БД в обоих кластеров
3) Желательно этот процесс как то отслеживать, чтобы вовремя среагировать на ошибки.

Далее я описал свое видение решения этих задач, при этом уведомив, что делаю я это впервые ( со всеми бывает в первый раз) )
Естественно, в силу опыта я мог не учесть многих нюансов - иначе, зачем мне создавать эту тему?
Как раз затем, чтобы спросить совета у более опытных товарищей.
...
Рейтинг: 0 / 0
27.12.2017, 14:17
    #39576836
AngryError
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
Andy_OLAPAngryError,
Коллега, расшифруйте фразу "настраиваем в AlwaysOn предпочтительную реплику для бекапа" - Вы один раз выберете, какая реплика будет использоваться для бэкапов, или несколько раз в течение дня будете определять, какая теперь предпочтительная.
Больше нюансов - больше ответов от участников, как это все настроить.

В каждом кластере по 4 реплики.
Хотелось бы, чтобы бекапы делались с одной и той же реплики (вторичной), но если она в DOWN'е - бекап переключался на другую вторичную реплику. Если реплика стала первичной - бекап так же переключался на другую по приоритету вторичную реплику.
...
Рейтинг: 0 / 0
15.09.2018, 11:37
    #39702914
nvv
nvv
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
Тоже окунулся в тему AlwaysOn.

Есть два сервера в кластере, синхронных.
1. На первичной ноде доступны все варианты бэкапа?
2. На вторичной ноде - только Copy_Only ?
3. при создании задания бэкапа в плана обслуживания создается такой код:
SET @preferredReplica = (SELECT [master].sys.fn_hadr_backup_is_preferred_replica('test1'))
IF (@preferredReplica = 1) и т.д.
В переменной всегда 0 на обоих нодах. В чем ошибка?
Настройка по дефолту AUTOMATED_BACKUP_PREFERENCE = SECONDARY, но 0 выдается при всех значениях ((
По идее мне вообще нужно различать для двух нод разные значения.
...
Рейтинг: 0 / 0
19.09.2018, 16:51
    #39705122
Andy_OLAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Организация резервного копирования AlwaysOn
nvvВ переменной всегда 0 на обоих нодах. В чем ошибка?

Вот тут подробная статья с использованием такой переменной.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Организация резервного копирования AlwaysOn / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]