Репликацию данных часто называют зеркалированием баз данных.
Примечание Дублирование данных SQL-серверов отличается от копирования обычных файлов, поскольку, например, данные имеют структуру и при дублировании их на новый сервер необходимо обеспечить целостность информации, внести одновременно все взаимосвязанные изменения.
Можно назвать следующие преимущества собственных (для SQL-серверов) методов зеркалирования от, например, построения кластерной системы:
отсутствие необходимости использования дополнительного оборудования (систем хранения данных), дублирование производится по обычной сети передачи данных;
зеркалирование можно настроить раздельно для каждой базы (в кластере резервируется все базы сервера);
нет ограничений по оборудованию, которое может применяться для других вариантов (например, по числу процессоров);
зеркалирование может быть настроено в режиме активный-пассивный (изменения в данные могут вноситься только на первом сервере, на втором - только копия данных) или активный-активный (возможны изменения данных на каждом сервере).
Данные между серверами передаются асинхронно. Основной сервер пересылает на вторую систему данные журнала транзакций (протокол внесенных изменений в данные), второй сервер обрабатывает их и вносит изменения в свою копию данных. Эти операции выполняются по мере изменений базы, но понятно, что в силу, например, проблем передачи по сети и т. п., подобные невнесенные изменения могут накапливаться. В результате второй сервер гарантирует идентичность данных только при нормальном функционировании обоих серверов и сети передачи данных. Поэтому администратору необходимо постоянно контролировать состояние репликации.
Как уже упоминалось, репликация может настраиваться в двух вариантах: актив-ный-активный и активный-пассивный. Простейший случай, когда данные могут меняться только на одном сервере. Обычно проблем при таком варианте настроек не возникает.
Проблемы будут, если требуется настроить репликацию изменений в обе стороны. Если изменения возможны на обоих серверах, то неизбежны конфликты: изменения на одном сервере будут противоречить изменениям на другом. Как следует поступить в таком случае, априори неизвестно, выбор алгоритма зависит от многих причин, в том числе и от структуры (схемы) данных. Поэтому настройка двусторонней репликации должна выполняться только подготовленными администраторами баз данных, хорошо представляющими себе внутреннюю структуру системы и прикладных данных.
Собственно настройка зеркалирования, например в MS SQL, не представляет сложностей. Предварительно рекомендуется сделать резервную копию данных и включить режим восстановления Full. После чего вызвать мастер создания подписки (в терминологии MS SQL основной сервер называют издателем, а сервер, на который копируются данные, - подписчиком) и следовать его указаниям (выбрать базу, указать подписчика, выбрать алгоритм и т. д.). Обязательно следует проверить состояние репликации и отсутствие очереди невнесенных изменений в журнале.
⇐Зеркалирование серверов баз данных | Самоучитель системного администратора | Снимки баз данных⇒
1999 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2000 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2001 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2002 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2003 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2004 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2005 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2006 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2007 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2008 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2009 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2010 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2011 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2012 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2013 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2014 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2015 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2016 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2017 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2018 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2019 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2020 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
2021 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |