Question

Notre cas d'utilisation est une base de données responsable des comptes, des sessions, des licences, etc. & # 8212; il doit être interrogé au démarrage du client; une fiabilité élevée est donc cruciale. En tant que tels, nous souhaitons effectuer la réplication sur différents serveurs dans des réseaux physiquement séparés, au cas où un centre de données entier tomberait en panne. J'ai mis en place avec succès un abonnement push à un autre serveur du même réseau, donc cela fonctionne généralement. C'est la connexion aux serveurs en dehors du réseau que je dois utiliser dès maintenant.

La réplication ne fonctionne pas directement sur les réseaux. Microsoft suggère une réplication VPN ou Web . Ce dernier me semble inefficace (et ils disent & "); Remarque: la synchronisation Web est conçue pour synchroniser des données avec des ordinateurs portables, des périphériques de poche et d'autres clients. La synchronisation Web n'est pas destinée aux gros volumes de serveurs. applications. ")

Le premier, un VPN, fonctionnerait, mais je considère toujours comme une solution inutilement complexe (sans parler du potentiel supplémentaire de problèmes de sécurité) d’exécuter en continu une connexion VPN. Je préférerais de loin gérer un tunnel SSH. Pourtant, je ne trouve aucun article qui explique comment faire cela et qui ne concerne pas MySQL.

J'ai un serveur SSH configuré sur l'abonné et j'ai utilisé PuTTY pour établir un tunnel de <publisher>:1434 à <subscriber>:1433. Cependant, je ne peux pas obtenir que SQL Server Management Studio se connecte de cette manière (je ne suis pas sûr que cette dernière prenne en charge la syntaxe : du port). J'ai également configuré un alias sur le Gestionnaire de configuration de SQL Server <publisher>, avec @@servername sur <subscriber>, pointant vers localhost:1434. La connexion à cela ne semble pas fonctionner non plus.

J’ai utilisé l’option d’abonnement push, je suppose donc que l’éditeur doit se connecter à l’abonné, et non l’inverse.

Les deux serveurs utilisent l'instance par défaut et exécutent SQL Server 2005 SP 2 sur Windows Server 2003 SP 2. Le serveur SSH sur l'abonné est freeSSHd 1.2.1.

Est-ce possible? Existe-t-il un autre moyen d'exploiter SSH pour prétendre que la machine existe au sein du même réseau? Ou dois-je aller avec un VPN?

Était-ce utile?

La solution

Lorsque vous parlez de différents emplacements des serveurs, cela signifie-t-il également différents domaines? Votre commentaire sur la réplication Web est vrai, mais ne s'applique qu'aux modifications quotidiennes apportées à la base de données. Votre instantané initial peut être de n'importe quelle taille, même s'il s'agit d'une énorme base de données. Si vos mises à jour quotidiennes sont limitées (quelques 1000 me semblent correctes), allez-y. C'est rapide!

EDIT:

Il existe un problème majeur de domaine / sécurité lorsque vous commencez à penser à échanger des données entre serveurs. Si vous avez besoin de connecter des serveurs appartenant à différents domaines via un VPN ou un lien dédié et si vous ne souhaitez pas utiliser la sécurité SQL (évitez-le!), Vous devrez faire face à des problèmes spécifiques (et de licence!) Liés à la confiance de domaine. . L'un des côtés intelligents de la réplication Web consiste à éviter ce type de problème (et des coûts supplémentaires) en sécurisant la connexion via le protocole https.

Autres conseils

Je sais qu'il s'agit d'un ancien message, mais j'espère que cela aidera: SQL Server Management Studio utilise une virgule pour séparer l'hôte du port.

Comment spécifier un numéro de port différent dans SQL Management Studio?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top