Академия Специальных Курсов по Компьютерным Технологиям
    Главная страница Послать письмо
 
AskIt.ru  
   
   
   
   
   
   
 
 
  Главная / Заказные курсы / Microsoft SQL Server 2005 для администраторов
 
 

Получить учебные материалы по этому курсу


<-- Назад Читать дальше -->

12.6. Настройка репликации

Мастер настройки распространителя Configure Distribution Wizard в SQL Server 2005, мастер создания публикации New Publication Wizard, мастер создания подписки New Subscription Wizard

После того как все необходимые решения приняты, и все проверки проведены, можно настраивать репликацию.

Вариантов настройки репликации очень много. В этом модуле будет рассматриваться только настройка наиболее распространенного типа репликации — репликации транзакций.

Предположим, что вам нужно настроить репликацию транзакций для всех таблиц схемы HumanResources в базе данных AdventureWorks на сервере LONDON2\SQL2005. Все изменения, которые вносятся в любую из этих таблиц, должны не позднее, чем через 10 минут отобразиться в одноименных таблицах новой базы данных AW2 на сервере LONDON2\YUKON2.

Первое, с чего обычно начинается настройка репликация, — настройка распространителя. Проще всего произвести настройку распространителя при помощи мастера Configure Distribution Wizard. Его можно запустить при помощи команды Configure Distribution (Настроить распределение) контекстного меню контейнера Replication (Репликация) в Object Explorer в SQL Server Management Studio.

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

q      распространитель работает на выделенном специально для него сервере;

q      роль распространителя совмещена с ролью издателя;

q      роль распространителя совмещена с ролью подписчика.

Ваш выбор зависит от степени загрузки серверов, принимающих участие в репликации и от топологии сети на предприятии. Для простоты в этом примере роль распространителя будет выполнять сервер-издатель (это очень распространенный на практике вариант). Поэтому запустите мастер Configure Distribution Wizard на сервере LONDON2\SQL2005.

На первом экране мастера Distributor (Дистрибьютор) вы должны определиться, будет ли наш сервер выполнять роль распространителя для самого себя или он будет обслуживаться внешним сервером-распространителем. В вашем случае, конечно, выберите первый вариант.

На следующем экране мастера Snapshot Folder (Каталог моментальных снимков) вы должны определить каталог, в который будут помещаться моментальные снимки данных. По умолчанию предлагается использовать путь в локальной файловой системе. Однако при использовании такого каталога нельзя будет применять запрашивающие подписки, т. е. подписки, при которых процесс передачи данных будет инициировать подписчик. Для ваших целей вполне можно оставить каталог, предлагаемый по умолчанию. В практической работе правильнее было бы создать сетевую папку и предоставить на нее права на чтение и запись для той учетной записи, от имени которой работает SQL Server Agent. В SQL Server 2005 есть возможность определить для каждого агента свою учетную запись, но это используется редко.

На следующем экране Distribution Database (База данных распределения) вам потребуется определить имя и местонахождение файлов для создаваемой базы данных распределения. Отметим, что в этой базе данных будут храниться как настройки репликации, так и все изменения, которые передаются с издателя подписчикам. Поэтому при настройке репликации в реальной работе необходимо позаботиться о наличии для этой базы данных достаточного места на диске.

Следующее, что вам потребуется сделать, — на экране Publishers (Издатели) выбрать те серверы, которые смогут использовать этот распространитель. В вашем случае здесь достаточно выбрать только сервер LONDON2\SQL2005.

На последнем экране мастера Wizard Actions (Действия мастера) нужно дать команду на настройку распространителя и создание базы данных распределения. Отсюда же можно дать команду на генерацию скрипта с командами Transact-SQL, который будет выполнять выбранные вами на графическом экране действия.

После того, как вы нажмете кнопку Finish (Завершить), настройка распространителя будет закончена.

Следующее действие, которое обычно выполняется после настройки распространителя, — это создание публикации. Проще всего создать публикацию при помощи мастера New Publication Wizard. Запустить его можно при помощи команды New Publication (Новая публикация) контекстного меню контейнера Replication | Local Publications (Репликация | Локальные публикации) в SQL Server Management Studio.

Первое, что вам потребуется сделать, — выбрать на экране Publication Databases (Базы данных публикации) базу данных с информацией для публикации. В соответствии с условиями задания это должна быть база данных AdventureWorks.

На следующем экране Publication Type (Тип публикации) выберите тип публикации Transactional Publication (Транзакционная публикация).

На экране Articles (Статьи) вам потребуется создать статью для публикации. Для этого в списке объектов раскройте узел Tables (Таблицы) и установите флажки напротив всех таблиц схемы HumanResources. К сожалению, сортировки по схемам в этом окне не предусмотрено. Всего вам нужно установить флажки напротив семи таблиц.

На следующем экране Filter Table Rows (Фильтровать строки в таблицах) можно бы было отфильтровать записи в таблицах, использовав выражение WHERE. Однако в этом примере фильтрации не требуется. Отфильтровать столбцы можно было бы и на предыдущем экране. Для этого достаточно развернуть узел для таблицы и снять флажки напротив столбцов, которые не должны реплицироваться.

На следующем экране Snapshot Agent вы должны настроить параметры запуска агента снятия моментальных снимков. По умолчанию переключатель стоит в положении Create a snapshot immediately (Создать моментальный снимок немеделенно). Это значит, что моментальный снимок данных публикации будет сделан сразу после публикации и будет сохраняться в папке, чтобы можно было бы настраивать подписки. Второй вариант — настроить создание моментального снимка по расписанию (положение переключателя Schedule the Snapshot Agent to run at the following times). Этот вариант используется в тех ситуациях, когда данных в публикации очень много и желательно изготавливать снимок в ночное время. Другая ситуация — к этому серверу будут постоянно подключаться новые подписчики, которых придется инициализировать при помощи моментальных снимков (т. е. создавать исходные варианты таблиц). В этом случае регулярное создание моментальных снимков позволит сэкономить время (к подписчикам придется применять меньшее количество изменений).

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

На следующем экране Agent Security (Безопасность агента) вы должны выбрать учетные записи, от имени которых будут работать Snapshot Agent и Log Reader Agent. Microsoft рекомендует для повышения безопасности использовать для каждого агента свою учетную запись с минимально необходимым набором прав. Но для большинства предприятий такая настройка будет неоправданно сложной. Лучше всего настроить работу агентов от имени учетной записи SQL Server Agent. Для этого на экране настройки безопасности агентов, который открывается при нажатии на кнопку Security Settings (Настройки безопасности), предназначен специальный флажок Run under the SQL Service Agent Account (Запускать под учетной записью SQL Service Agent).

После этого  нажмите кнопку Finish, определите имя для публикации (назовите ее HR) и выполните ее создание.

Последнее, что вам осталось сделать для настройки репликации, — создать подписку. В этом примере будет использоваться принудительная подписка, в которой все агенты работают на распространителе. Это самый удобный с точки зрения централизации управления репликацией тип подписки.

Настроить подписку также проще всего при помощи мастера. Мастер создания подписки нужно запустить при помощи команды New Subscriptions (Новая подписка) контекстного меню контейнера Local Subscriptions (Локальные подписчики) для того сервера, который у вас является издателем и дистрибьютором (обратите внимание: не для того сервера, который будет подписчиком!).

Первый важный выбор нужно будет произвести на экране мастера Distribution Agent Location (Местонахождение Distribution Agent). Здесь выбирается тип создаваемой подписки: принудительная или запрашивающая. В данном случае выберите принудительную подписку.

На следующем экране Subscribers (Подписчики) вы должны выбрать сервер, который будет подписчиком для вашей публикации. Скорее всего, нужного вам сервера в этом списке не будет. Чтобы его добавить, нужно нажать кнопку Add Subscriber (Добавить подписчика), а затем выбрать значение New SQL Server Subscriber (Новый подписчик SQL Server). После этого вам потребуется просто подключиться к данному серверу SQL Server с правами администратора.

Следующее, что вам потребуется сделать на этом экране, — выбрать базу данных, на которую будут передаваться реплицируемые данные. Вы можете предварительно создать нужную базу данных на сервере-подписчике вручную, а можете просто на этом экране выбрать значение New Database (Новая база данных) и создать новую базу данных. В данном случае создайте новую базу данных с параметрами по умолчанию и именем AW2.

На следующем экране Distribution Agent Security (Безопасность Distribution Agent) вам потребуется настроить учетную запись для Distribution Agent и настроить параметры его подключения к распространителю и подписчику. В этом примере используйте для него ту же учетную запись, что и для SQL Server Agent, а для остальных параметров оставьте значения по умолчанию.

Следующее, что вам потребуется сделать, — настроить расписание репликации. Согласно условию задания, репликация должна производиться с интервалом в 10 минут. Поэтому в списке Agent Schedule (Расписание агента) на экране Synchronization Schedule (Расписание синхронизации) выберите параметр Define Schedule (Определить расписание) и настройте параметры для создаваемого расписания. Соответствующие настройки в вашем случае могут выглядеть так, как представлено на рис. 12.1.

Рис. 12.1. Настройки расписания для репликации

Другие доступные для вас варианты расписания — Run continuously (Запускать постоянно, т. е. репликация будет производиться непрерывно с минимальными интервалами) и Run on demand only (Запускать только по запросу).

На следующем экране мастера вы должны определиться со временем инициализации базы данных подписчика. В вашем распоряжении есть два варианта — Immediately (Немедленно) и At first synchronization (При первой синхронизации, т. е. во время первого сеанса репликации согласно настроенному расписанию). На этом же экране при необходимости можно снять флажок Initialize (Инициализация). В этом случае инициализация базы данных подписчика (т. е. создание исходного варианта таблиц) производиться не будет. Вам потребуется создать таблицы и загрузить их данными вручную. Такое решение может быть полезным, когда данных в подписке много, и вы хотите произвести изначальную загрузку данных для подписчика при помощи резервной копии.

На этом настройка параметров подписки (и всей системы репликации) закончена. Вам осталось только нажать кнопку Finish и произвести создание подписки. В базе данных подписки будет автоматически создан требуемый набор таблиц и будет произведена загрузка данных в эти таблицы. Если же вы внесете какие-либо изменения в опубликованные таблицы источника, то в течение 10 минут эти изменения будут отреплицированы и отображены в базе данных подписчика.

 

   
   
   
   
   
   
   
   
   
   
 
<-- Назад Читать дальше -->

Получить учебные материалы по этому курсу


 
© 2004-2008, Академия Специальных Курсов
по Информационным Технологиям
.
Все права защищены.

Разработка NevaStudio
г. Санкт-Петербург, Васильевский остров,
20-я линия, д. 7
Офис 101, 2-й этаж
Телефон: 8(812)922-47-60
E-mail: info@askit.ru