Le 14 septembre 2017, nous avons publié une version actualisée de notre Politique de confidentialité. En utilisant video2brain.com vous vous engagez à respecter ces documents mis à jour. Veuillez donc prendre quelques minutes pour les consulter.

SQL Server 2016 : La réplication

Créer une publication transactionnelle

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Apprenez à créer votre publication transactionnelle. Abordez les options particulières que vous pouvez choisir pour chaque table d'article.
06:44

Transcription

Nous avons une réplication d'instantanée qui fonctionne. Allons maintenant un peu plus loin avec une réplication de type transactionnelle. Je vais simplement reprendre ici mes publications locales et créer une nouvelle publication à partir toujours de ma même base de donnée source, « pachadataformation » et je vais chercher maintenant une publication transactionnelle. Vous voyez ici qu'il y a quatre types de publications. Une publication d'instantanée, on connait, publication transactionnelle, on connait, publication de fusion également. Mais il y a une publication dite « d'égale à égale », en fait anglais «peer-to-peer», qui est une publication spécifique assez compliquée à mettre en place, assez peu utilisée, c'est pour ça que je ne vous en parle pas dans cette formation, mais qui permet de faire une réplication entre un certain nombre de serveurs, en «peer-to-peer» total. Chaque serveur a les mêmes responsabilités et échange avec tous les autres serveurs ses données. Je ne vous dis pas que c'est assez compliqué. Bon je vous l'ai dit, cela dit. Mais si vous voulez un jour vous y plonger, accrochez vous. Il vaut mieux, c'est un conseil, essayer de résoudre vos problèmes par des types de réplication standard qui sont la transactionnelle ou la réplication de fusion. Ok, c'était une parenthèse. Je continue. Maintenant, on va voir quelques petits changements. Je maximise ça. Vous voyez que contrairement à la réplication d'instantanée, j'ai des tables qui sont interdites. Pourquoi cela? Dans la réplication d'instantanée, je peux prendre toutes les tables, parce que finalement je récupère l'intégralité de la table et je la copie à chaque fois totalement de l'autre côté, sur mes abonnés. Ici par contre, dans ma table client, je ne peux pas l'utiliser parce qu'elle n'a pas de clé primaire. Pour participer à une réplication transactionnelle, il faut que les tables aient des clés primaires. Donc, il faudrait que je modifie ces tables que j'ajoute par exemple un « clientId », que je le définisse comme contrainte de clé primaire pour que ça fonctionne. On va utiliser plutôt ma table de contact. Et vous voyez que je peux sélectionner ou non certaines colonnes. Je vais par exemple éviter de prendre « l'AdressePostaleId » et la « SociétéId », sans des informations qui sont dans des tables jointes. Donc je n’ai pas envie forcément de les récupérer pour les besoins de mon abonné. Je vais récupérer aussi une table de formateur par exemple. Et puis je ne vais pas prendre la société. Donc, c'est complètement aléatoire comme choix hein, je fais ça juste pour vous montrer les fonctionnalités. J'ai donc défini des articles en ne prenant pas toutes les colonnes. J'ai fait un filtrage vertical si vous voulez. Maintenant je vais prendre cette table et je vais chercher ici des propriétés de l'article. Je vais pouvoir définir soit les propriétés des articles qui sont en surbrillance, c'est-à-dire la table que j'ai sélectionnée en fait, soit définir les propriétés globales de tous les articles que j'ai sélectionnés. Donc je vais prendre, allez seulement la table en surbrillance, ma table contact, elle est ici également. Et je vais pouvoir préciser un certain nombre d'option, je vais agrandir aussi pour que ce soit plus visible. Si vous observez un peu ces options, vous voyez qu'il y a plein de choses intéressantes Est-ce qu'on va copier les contraintes de clés étrangères par exemple? Ici, bah c'est bien que ce soit « false » puisque je n'ai pas ajouté les tables, par exemple la table d'adresse pour « l'AdressePostale », ou la table de société, pour le « SociétéId », que je n'ai pas pris de toute façon donc on oublie. Par contre, une chose intéressante, c'est ici, « copier les index non cluster ». Qu'est ce que c'est? C'est juste les index. L'index cluster va être copié automatiquement, c'est en général celui qui est placé sur la clé primaire et tous les index que vous avez créés pour les performances ne sont par défaut pas copiés. Ça peut avoir du sens, peut être que vous n'avez pas les mêmes exigences de performance, pas les mêmes requêtes sur votre abonné, mais si c'est le cas, eh bien, copiez les index « non cluster » Si vous avez activé certaines fonctionnalités plutôt de l'édition entreprise sur vos tables, comme par exemple vous avez activé ici, vous voyez, le partitionnement sur des tables et des index. Ou bien, vous avez activé la compression des données ici, ça peut être intéressant de copier aussi ces spécifications de table. Bref, vous voyez que c'est intéressant de jeter un coup d'œil. On a une gestion ici des plages d'identités et ça en va le conserver pour la réplication de fusion. On va en parler brièvement. Et puis, on peut changer deux ou trois options comme: le nom de l’objet de destination, vous pouvez renommer la table, vous pouvez renommer le schéma, c'est-à-dire ici, le propriétaire, bon c'est mal nommé parce que c'est une fonctionnalité historique. Mais depuis « SQL serveur 2005 », on parle plus de schéma, on ne parle plus de propriétaire. Si votre table contact qui est ici dans le schéma contact, c'est à dire qu'il s'appelle « contact.contact », de l'autre côté doit s'appeler « dbo.contact » parce que vous n'avez pas à gérer les schémas. Eh bien, vous mettez ici « dbo », et puis vous avez ici toute une série d'options pour convertir certain type en un autre si vous avez un abonné qui est dans une version antérieure de « SQL server », qui ne supporte pas ces types de données. Enfin, une dernière chose à noter, comme ça au passage, c'est que les instructions de remise sur l'abonné peuvent être faites de différente façon. Vous le voyez ici, on a des formats de remise pour les « insert » et les « update ». L'idée, c'est que lorsque la modification va être apportée au distributeur, le distributeur va déclencher une procédure stockée sur l'abonné pour faire cette insertion. Il va appeler simplement du code sur l'abonné pour dire, eh bien, « insert » ou supprime, ou modifie une donnée qui a été modifiée dans la base source. Et cela est fait par défaut avec des procédures stockées qui s'appellent comme ceci. Et pourquoi c'est intéressant ? Parce que vous pouvez les modifier éventuellement. Si vous avez un besoin spécifique sur un abonné vous pourriez modifier ses procédures stockées. Ce qui changerait la stratégie mise à jour des données. Donc, c'est puissant, faites attention simplement lorsque vous réinitialisez votre publication, ces procédures vont être écrasées. Donc si vous faites des modifications, sauvegardez-les et trouvez un moyen de les réappliquer si vous devez réinitialiser de l'autre côté votre publication sur l'abonné, c'est à dire que vous devez refaire un snapshot et le réappliquer.

SQL Server 2016 : La réplication

Mettez en place une solution de réplication sur une plateforme SQL Server. Transférez ainsi aisément vos données entre des instances SQL Server.

1h22 (18 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :26 juil. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !