Можно ли выполнить репликацию слиянием SQL Server 2005 через туннель SSH? - PullRequest
1 голос
/ 25 октября 2008

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

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

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

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

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

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

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

Ответы [ 2 ]

1 голос
/ 28 октября 2008

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

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

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

0 голосов
/ 19 октября 2012

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

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

...