Création, modification et s ...


Documentation en ligne de SQL Server 2008 (juillet 2009)
Procédure : créer une publication (programmation Transact-SQL de la réplication)

Il est possible de créer des publications par programme en utilisant les procédures stockées de réplication. Les procédures stockées à utiliser dépendent du type de publication à créer.

ms147855.security(fr-fr,SQL.100).gifRemarque relative à la sécurité :
Lorsque c'est possible, utilisez l'authentification Windows. Si possible, invitez les utilisateurs à entrer leurs informations d'identification au moment de l'exécution. Si vous devez stocker les informations d'identification dans un fichier de script, vous devez sécuriser ce fichier pour empêcher tout accès non autorisé.

Pour créer une publication de capture instantanée ou une publication transactionnelle

  1. Exécutez sp_replicationdboption (Transact-SQL) sur la base de données de publication du serveur de publication pour activer la publication de la base de données actuelle à l'aide de la réplication transactionnelle ou de capture instantanée.

  2. Pour une publication transactionnelle, déterminez si un travail de l'Agent de lecture du journal existe pour la base de données de publication. (Cette étape n'est pas requise pour les publications de capture instantanée.)

    • Si un travail de l'Agent de lecture du journal existe pour la base de données de publication, passez à l'étape 3.
    • Si vous ne savez pas si un travail de l'Agent de lecture du journal existe pour une base de données publiée, exécutez sp_helplogreader_agent (Transact-SQL) sur la base de données de publication du serveur de publication.
    • Si le jeu de résultats est vide, créez un travail de l'Agent de lecture du journal. Sur le serveur de publication, exécutez sp_addlogreader_agent (Transact-SQL). Spécifiez les informations d'identification Microsoft Windows sous lesquelles l'Agent s'exécute pour @job_name et @password. Si l'Agent utilise l'authentification SQL Server lors de la connexion au serveur de publication, vous devez également spécifier la valeur 0 pour @publisher_security_mode et spécifier les informations de connexion à Microsoft SQL Server pour @publisher_login et @publisher_password. Passez à l'étape 3.
  3. Sur le serveur de publication, exécutez sp_addpublication (Transact-SQL). Spécifiez un nom de publication pour @publication et, pour le paramètre @repl_freq, spécifiez la valeur snapshot pour une publication de capture instantanée ou la valeur continuous pour une publication transactionnelle. Spécifiez d'autres options de publication éventuelles. Cela définit la publication.

    ms147855.note(fr-fr,SQL.100).gifRemarque :
    Un nom de publication ne doit pas contenir les caractères suivants :

    % * [ ] | : " ? \ / < >

  4. Sur le serveur de publication, exécutez sp_addpublication_snapshot (Transact-SQL). Spécifiez le nom de publication utilisé à l'étape 3 pour @publication et les informations d'identification Windows sous lesquelles l'Agent de capture instantanée s'exécute pour @snapshot_job_name et @password. Si l'Agent doit utiliser l'authentification SQL Server lors de la connexion au serveur de publication, vous devez également spécifier la valeur 0 pour @publisher_security_mode et spécifier les informations de connexion à SQL Server pour @publisher_login et @publisher_password. Cela crée un travail de l'Agent de capture instantanée pour la publication.

    ms147855.security(fr-fr,SQL.100).gifRemarque relative à la sécurité :
     Lors de la configuration d'un serveur de publication avec un serveur de distribution distant, les valeurs fournies pour tous les paramètres, y compris job_login et job_password, sont envoyées en texte brut au serveur de distribution. Vous devez chiffrer la connexion entre le serveur de publication et son serveur de distribution distant avant d'exécuter cette procédure stockée. Pour plus d'informations, consultez Chiffrement des connexions à SQL Server.

  5. Ajoutez des articles à la publication. Pour plus d'informations, consultez Procédure : définir un article (programmation Transact-SQL de la réplication).

  6. Démarrez le travail de l'Agent de capture instantanée pour générer la capture instantanée initiale pour cette publication. Pour plus d'informations, consultez Procédure : créer la capture instantanée initiale (programmation Transact-SQL de la réplication).

Pour créer une publication de fusion

  1. Sur le serveur de publication, exécutez sp_replicationdboption (Transact-SQL) pour activer la publication de la base de données actuelle à l'aide de la réplication de fusion.

  2. Exécutez sp_addmergepublication (Transact-SQL) sur la base de données de publication du serveur de publication. Spécifiez le nom de la publication pour @publication et d'autres options de publication éventuelles. Cela définit la publication.

    ms147855.note(fr-fr,SQL.100).gifRemarque :
    Un nom de publication ne doit pas contenir les caractères suivants :

    % * [ ] | : " ? \ / < >

  3. Sur le serveur de publication, exécutez sp_addpublication_snapshot (Transact-SQL). Spécifiez le nom de publication utilisé à l'étape 2 pour @publication et les informations d'identification Windows sous lesquelles l'Agent de capture instantanée s'exécute pour @snapshot_job_name et @password. Si l'Agent doit utiliser l'authentification SQL Server lors de la connexion au serveur de publication, vous devez également spécifier la valeur 0 pour @publisher_security_mode et spécifier les informations de connexion à SQL Server pour @publisher_login et @publisher_password. Cela crée un travail de l'Agent de capture instantanée pour la publication.

    ms147855.security(fr-fr,SQL.100).gifRemarque relative à la sécurité :
     Lors de la configuration d'un serveur de publication avec un serveur de distribution distant, les valeurs fournies pour tous les paramètres, y compris job_login et job_password, sont envoyées en texte brut au serveur de distribution. Vous devez chiffrer la connexion entre le serveur de publication et son serveur de distribution distant avant d'exécuter cette procédure stockée. Pour plus d'informations, consultez Chiffrement des connexions à SQL Server.

  4. Ajoutez des articles à la publication. Pour plus d'informations, consultez Procédure : définir un article (programmation Transact-SQL de la réplication).

  5. Démarrez le travail de l'Agent de capture instantanée pour générer la capture instantanée initiale pour cette publication. Pour plus d'informations, consultez Procédure : créer la capture instantanée initiale (programmation Transact-SQL de la réplication).

Exemple

Cet exemple crée une publication transactionnelle. Des variables de script sont utilisées pour transmettre les informations d'identification Windows nécessaires pour créer les travaux pour l'Agent de capture instantanée et l'Agent de lecture du journal.

Cet exemple crée une publication de fusion. Des variables de script sont utilisées pour transmettre les informations d'identification Windows nécessaires pour créer le travail pour l'Agent de capture instantanée.

Voir aussi

Tâches

Procédure : créer une publication (programmation RMO)

Concepts

Publication de données et d'objets de base de données

Autres ressources

Concepts liés aux procédures stockées système de réplication
Utilisation de sqlcmd avec des variables de script

Aide et informations

Assistance sur SQL Server 2008
Mots clés :


Page view tracker