Можно ли выполнить репликацию слиянием SQL Server 2005 через туннель SSH?

StackOverflow https://stackoverflow.com/questions/236242

Вопрос

В нашем случае используется база данных, отвечающая за учетные записи, сеансы, лицензии и т. д. & # 8212; он должен быть опрошен при запуске клиента, поэтому высокая надежность имеет решающее значение. Таким образом, мы хотели бы выполнить репликацию между разными серверами в физически отдельных сетях, на случай, если весь центр обработки данных выйдет из строя. Я успешно настроил принудительную подписку на другой сервер в той же сети, так что это обычно работает. Мне нужно, чтобы сейчас работало соединение с серверами вне сети.

Репликация не работает напрямую в сетях. Microsoft предлагает использовать VPN или веб-репликацию . Последнее кажется мне неэффективным (и они действительно говорят «!»). Примечание. Веб-синхронизация предназначена для синхронизации данных с портативными компьютерами, карманными устройствами и другими клиентами. Веб-синхронизация не предназначена для массовых межсерверных серверов. приложения Quot. &;)

Первый, VPN, будет работать, но я по-прежнему считаю это излишне сложным решением (не говоря уже о дополнительном потенциале проблем безопасности) для непрерывного запуска VPN-соединения. Я бы предпочел просто запустить SSH-туннель. Тем не менее, я не могу найти ни одной статьи, которая объясняет, как это сделать, и не касается MySQL.

Я настроил SSH-сервер на подписчике и использовал PuTTY, чтобы установить туннель от <publisher>:1434 до <subscriber>:1433. Однако я не могу заставить SQL Server Management Studio подключаться таким образом (я не уверен, что он поддерживает синтаксис порта :). Я также настроил псевдоним в <publisher> диспетчере конфигурации SQL Server с @@servername из <subscriber>, указывающим на localhost:1434. Подключение к этому тоже не работает.

Я использовал опцию принудительной подписки, поэтому я считаю, что издателю необходимо подключиться к подписчику, а не наоборот.

Оба сервера используют экземпляр по умолчанию и запускают SQL Server 2005 с пакетом обновления 2 (SP2) на Windows Server 2003 с пакетом обновления 2 (SP2). SSH-сервером подписчика является freeSSHd 1.2.1.

Возможно ли это вообще? Есть ли другой способ использовать SSH, чтобы представить, что машина существует в той же сети? Или я должен пойти с VPN?

Это было полезно?

Решение

Когда вы говорите о разных местах для серверов, это также означает разные домены? Ваш комментарий о веб-репликации верен, но относится только к ежедневным изменениям, внесенным в базу данных. Ваш первоначальный снимок может быть любого размера, даже если это огромная база данных. Если ваши ежедневные обновления ограничены (мне кажется, несколько тысяч), сделайте это. Это быстро!

РЕДАКТИРОВАТЬ:

Существует серьезная проблема с доменом / безопасностью, когда вы начинаете думать об обмене данными между серверами. Если вам нужно подключить серверы, принадлежащие к разным доменам, через VPN или какую-либо выделенную ссылку, и если вы не хотите проходить через SQL Security (избегайте этого!), Вы столкнетесь с конкретными (и лицензионными!) Проблемами, связанными с доверием доменов. , Одной из умных сторон веб-репликации является предотвращение такого рода проблем (и дополнительных затрат) путем защиты соединения по протоколу https.

Другие советы

Я знаю, что это старый пост, но, надеюсь, это поможет: SQL Server Management Studio использует запятую для отделения хоста от порта.

Как указать другой номер порта в SQL Management Studio?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top