2009-03-10 3 views
0

У меня есть 2 сервера, на которых запущен SQL Server 2005 с репликацией слияния между ними.Как установить сетевой адаптер, используемый репликацией SQL Server?

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

Как настроить репликацию слиянием, чтобы использовать частную сеть, а не сеть зданий?

Частная сеть не является частью какого-либо домена, но в строительной сети может быть или нет домен в зависимости от клиента.

Я попытался настроить репликацию с использованием IP-адресов частной сети, но некоторые из хранимых процедур работают только с именем сервера Windows. Я предполагаю, что имя сервера может быть разрешено в любой сети, и я хочу, чтобы трафик репликации не отправлялся в строительную сеть.

ответ

1

Я не знаю, будет ли это работать, но стоит попробовать.

  • Убедитесь, что кроссовый кабель настроен как частная подсеть между машинами. IP-адреса, связанные с каждой конечной точкой, должны иметь общий префикс, отличный от архитектуры здания. Например, установите одну конечную точку в 192.168.24.1, а другую - 192.168.24.2, а маску подсети - на 255.255.255.0.

  • Добавьте эти IP-адреса в файл hosts \ WINDOWS \ system32 \ drivers \ etc \ hosts. Убедитесь, что вы используете разные имена серверов, чем существующие. Я использовал server1 и server2 ниже.

    192.168.24.1 server1

    192.168.24.2 server2

Тест с использованием

ping server1 
    ping server2 

, чтобы убедиться, что они могут разговаривать друг с другом.

Используйте имена server1 и server2 для настройки репликации.

+0

К сожалению, это не сработало. Я получаю следующую ошибку на подписчике: «Удаленный сервер« ReplicationPrimary »не существует или не был указан как действительный Publisher, или у вас может не быть разрешения на доступ к доступным издателям». –

+0

У меня также возникла ошибка при создании издателя с sp_adddistributor: «Не удалось подключиться к серверу« TEST-SERVER », потому что« distributor_admin »не определяется как удаленный вход на сервер. Убедитесь, что вы указали правильное имя входа. " –

+0

Другой альтернативой может быть установка статического маршрута с ROUTE -p ADD 10.2.3.4 MASK 255.255.255.255 192.168.24.1 METRIC 0. Здесь 10.2.3.4 является IP-адресом другого компьютера в строительной сети. Сделайте то же самое (назад) на другом узле. Используйте регулярные имена для репликации. –

0

Вот догадка. Возможно, SQL не прослушивает этот IP-адрес.

Перейти к менеджеру SQL конфигурации сервера> конфигурации SQL2005 сети> TCP/свойства IP> Add IP (х) для локальной сети

SQL будет также сказать, что IP/порты он прослушивает в журнале при запуске ,

0

thinkcube's answer была правильной для детали я хочу поделиться здесь в случае, если люди не читают комментарии, за исключением:

Убедитесь, что вы используете другой сервер имена, чем существующие.

Мне нужно было использовать то же имя сервера в файле hosts. Это связано с тем, что издателю требовалось имя сервера Windows, в то время как подписчик был в порядке с чем-то другим.

С windows looks in the hosts file first будет использоваться IP-адрес (в частной сети), но издатель по-прежнему будет видеть правильное имя.