SQL сервер: бекап или репликация

Вопросы программирования БД, их оптимизации, резервирования и восстановления данных.

Модераторы: Trinity admin`s, Free-lance moderator`s

Ответить
Skifych
Junior member
Сообщения: 9
Зарегистрирован: 27 ноя 2007, 12:06
Откуда: Ukraine, Kyiv

SQL сервер: бекап или репликация

Сообщение Skifych » 27 ноя 2007, 12:45

Сабж.
Сейчас стоит сложный вопрос по отработке отказоустойчивости SQL сервера.
На сервере крутиться 5 баз сумарным объемом ~50гиг. В среднем каждая база за год растет на 1-2 гига.
Единомоментно на сервере седят порядка 40-50 человек, некоторые из них в двух-трех сессиях(1С).
На сервере крутиться исключительно SQL и ничего более.
На сегодняшний день схема бекапов такая:
Каждые сутки в 23:00 делается полный бекап всех баз в файл, потом файл пакуется и тянется на сервер бекапов. Да, так же где-то в это время чистится лог транзакций.
В случае падения сервера, у меня есть резервный SQL, поднятый на одной из терминалок.
По падению сервера SQL я должен вытянуть нужный бекап, распаковать и залить на сервер. Все это занимает в среднем 1,5-2 часа на одну базу. На 5 это займет часа 4 минимум. Плюс потеря всех данных, которые были внесены с момента бекапа.
На сегодня рассматривается три основных направления возможных решений:
1)кластер HA - дорого и в лучшем случае перспектива.
2)последние бекапы в сыром виде накатывать на второй сервер SQL по мере получения бекапов
3) реплицирование данных с основного сервера(это самый скользкий вопрос, так как с реплицированием толком дела не имел). В этом варианте несколько не понятно как будет жить сервер в случае если Publisher не вернется в сеть? Или вернется с бекапом суточной давности?

Какие могут быть замечания по данным пунктам(особо интересует 3-й, как менее проработанный)

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 27 ноя 2007, 12:53

http://www.microsoft.com/sql/prodinfo/o ... r2005.mspx
Там что-то про датабейз мирроринг было.
Я не админ, так что это лишь как мысль вслух.

Аватара пользователя
exLH
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 5061
Зарегистрирован: 11 фев 2004, 15:49
Откуда: Москва
Контактная информация:

Сообщение exLH » 27 ноя 2007, 12:53

У Вас в слове "или" две буквы лишние.

Аватара пользователя
a_shats
Advanced member
Сообщения: 5010
Зарегистрирован: 27 авг 2002, 10:55
Откуда: Москва
Контактная информация:

Сообщение a_shats » 27 ноя 2007, 12:57

Skifych
1)кластер HA - дорого и в лучшем случае перспектива.
Да ? При требовании простоя менее 2-4 часов ? :) "А придется" (с) :)
2)последние бекапы в сыром виде накатывать на второй сервер SQL по мере получения бекапов
Это все-таки не штатная процедура, мало ли что случиться может.
Например - при накатывании битого бэкапа.
3) реплицирование данных с основного сервера(это самый скользкий вопрос, так как с реплицированием толком дела не имел)
И это правильно. Почитайте на sql.ru, там достаточно написано на эту тему. Мое общее впечатление - репликация MSSQL не слишком надежная вещь.
Имхо, кластер HA, точнее, родной MSCS (если речь таки о MSSQL), с выносом ресурсов на внешний массив - выход единственно правильный.
Обычно мы для 1С от 50 клиентов как раз и рекомендуем полку entry-level массива.

Skifych
Junior member
Сообщения: 9
Зарегистрирован: 27 ноя 2007, 12:06
Откуда: Ukraine, Kyiv

Сообщение Skifych » 27 ноя 2007, 17:14

exLH писал(а):У Вас в слове "или" две буквы лишние.
Ессно бекапы никто не отменяет ни при каких раскладах. Просто вопрос на что упор сделать?

Skifych
Junior member
Сообщения: 9
Зарегистрирован: 27 ноя 2007, 12:06
Откуда: Ukraine, Kyiv

Сообщение Skifych » 27 ноя 2007, 17:15

gs писал(а):http://www.microsoft.com/sql/prodinfo/o ... r2005.mspx
Там что-то про датабейз мирроринг было.
Я не админ, так что это лишь как мысль вслух.
Спасибо, обязательно почитаю

Skifych
Junior member
Сообщения: 9
Зарегистрирован: 27 ноя 2007, 12:06
Откуда: Ukraine, Kyiv

Сообщение Skifych » 27 ноя 2007, 17:48

a_shats писал(а):Skifych
1)кластер HA - дорого и в лучшем случае перспектива.
Да ? При требовании простоя менее 2-4 часов ? :) "А придется" (с) :)
2)последние бекапы в сыром виде накатывать на второй сервер SQL по мере получения бекапов
Это все-таки не штатная процедура, мало ли что случиться может.
Например - при накатывании битого бэкапа.
3) реплицирование данных с основного сервера(это самый скользкий вопрос, так как с реплицированием толком дела не имел)
И это правильно. Почитайте на sql.ru, там достаточно написано на эту тему. Мое общее впечатление - репликация MSSQL не слишком надежная вещь.
Имхо, кластер HA, точнее, родной MSCS (если речь таки о MSSQL), с выносом ресурсов на внешний массив - выход единственно правильный.
Обычно мы для 1С от 50 клиентов как раз и рекомендуем полку entry-level массива.
Кластер был бы выходом, если уж citrix ферму настроить было бы не проблемой для балансировки и прочая, то вот SQL тонкое место. И пока с руководством мы еще не сошлись во мнении сколько времени будет простой в несколько часов безболезненным для фирмы.
За последний год у нас было несколько эксцессов с рейд контроллерами. 1-й был полусофтовый RAID1- сгорел проц на маме и машина буталась каждые три-пять минут, началось все после ухода сотрудников IT с работы. Пока отследили, пока приехали - за час массиву звездочки приснились. Спасти удалось по бекапам и в процессе двух суток мудохания с вениками 80-90% инфы.
Две недели назад вылетел Adaptec 2320 - развалился RAID5. Массив из 4-х винтов фуджиков. Все четыре давали FAILED совместно. Только два работали совместно и давали DEGRADATED, добавление любого третьего винта и массив снова FAILED. Ессно логический том не строился. Данные по бекапам востановили. Массив так собрать и не удалось - не смотря на то, что на эт убили почти неделю.
Но к чему я это все говорю - не верю я сейчас в массивы выше 1-го уровня. SQL-ный сервер работает на 5-ке. Серваку более трех лет. Нагрузка все это время по диску у него была не маленькая - диск у него узкое место. Стоит там LSI Megaraid 320-1, без батареи. И его отказ становиться все ближе и ближе, оглядываясь на последний сервер купленный с ним обновременно и где массив разваливался уже дважды с потерей инфы
Насколько более отказоустойчивым будет внешний массив?
Может есть смысл взять массив, второй сервак и сделать общее хранилище на массиве и средствами SQL-я создать кластер MSSQL?

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 27 ноя 2007, 18:00

Все это очень странно, т.к. если бы это было нормой, мы бы просто разорились на сервисе. В нормальных серверах нормальные контроллеры при нормальной электрике живут годами.
Двухконтроллерный внешний массив конечно надежнее писиайного, но если у Вас такие чудеса творятся, то сначала надо бы с чудесами и разобраться.

А вообще - два внешних ящика типа Xyratex F5402E или IBM DS3400, зазеркаленные веритасом, плюс кластер из двух серверов - при условии нормальных внешних условий решение почти непробиваемое. Но стоить будет много десятков килобаксов.

Ответить

Вернуться в «Серверы - ПО, Базы Данных и их использование»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 10 гостей