Commande nscontrol update

Mis à jour : 5 décembre 2005

Met à jour les bases de données d'instance et d'application pour une instance existante de SQL Server Notification Services.

Syntaxe

nscontrol update 
    [-nologo]
    [-help]
        -in configFile
    [-verbose] 
    [-force] 
    [-sqlusername sqlUserName -sqlpassword sqlPassword] 
    [-argumentkey key]
    [-timeout seconds]
    [param=value ...]

Arguments

  • -nologo
    Supprime les informations de produit et de version qui s'affichent lorsque vous exécutez une commande nscontrol.
  • -help
    Affiche la syntaxe de la commande.
  • -inconfigFile
    Chemin d'accès et nom du fichier de configuration d'instance (ICF) qui définit l'instance. Si ce fichier se trouve dans le répertoire actif, le chemin n'est pas nécessaire.
  • -verbose
    Affiche toutes les informations qui ont été modifiées dans le fichier ICF et le fichier de définition d'application (ADF). Ceci s'avère utile pour le débogage ou pour comprendre exactement les actions qu'exécute nscontrol update.
  • -force
    Oblige nscontrol update à poursuivre sans demander d'autorisation à l'utilisateur après avoir affiché les actions qui vont s'exécuter.
  • -sqlusernamesqlUserName
    Nom d'ouverture de session de SQL Server utilisé pour la connexion à SQL Server.

    ms162829.note(fr-fr,SQL.90).gifImportant :
    L'authentification Windows est plus sûre que l'authentification SQL Server. À chaque fois que possible, utilisez l'authentification Windows.

    Si vous utilisez l'authentification SQL Server pour la connexion à SQL Server, vous devez spécifier les arguments -sqlusername et -sqlpassword.

    Si vous utilisez l'authentification Windows, ne spécifiez pas les arguments -sqlusername et -sqlpassword.

  • -sqlpasswordsqlPassword
    Mot de passe associé au nom d'ouverture de session -sqlusername. Spécifiez un mot de passe uniquement lorsque vous établissez une connexion avec l'authentification SQL Server.
  • -argumentkeykey
    Même valeur de clé déjà spécifiée avec nscontrol register et nscontrol create. Cet argument est obligatoire si la valeur EncryptArguments du fichier ICF est true. La commande nscontrol update déchiffre les valeurs d'arguments pour s'assurer que la clé est la même que celle spécifiée avec nscontrol create. Si la valeur de la clé est la même, la mise à jour se poursuit. Vous ne pouvez plus modifier la clé après avoir créé l'instance.
  • -timeout seconds
    Délai d'attente, en secondes, pour l'exécution de chaque action de mise à jour, par exemple la création ou la suppression d'un index. Le délai d'attente par défaut est de 30 secondes. Si une action est susceptible de prendre plus de 30 secondes, définissez une valeur de délai d'attente plus longue.
  • param=value
    Paire nom/valeur utilisée pour passer des paramètres au fichier de configuration depuis l'invite de commandes.

    Si le fichier de configuration contient des paramètres remplaçables (tels que %DBSystem%), spécifiez le nom du paramètre et la valeur à l'invite de commandes. Par exemple, si le fichier de configuration contient le code XML suivant :

    <SqlServerSystem>%DBSystem%</SqlServerSystem>
    

    puis, spécifiez le nom et la valeur en utilisant nscontrol update de la façon suivante :

    nscontrol create -in config.xml DBSystem=MySQLServer
    

    Les valeurs de paramètre que vous spécifiez au niveau de l'invite de commandes s'appliquent aux paramètres du fichier ICF, mais pas directement aux paramètres des fichiers de définition d'application (ADF). Pour passer des valeurs de paramètres à un fichier ADF, ajoutez une sous-section Parameters à la section Application du fichier de configuration. Vous pouvez utiliser des paramètres remplaçables comme valeurs dans ce nœud. Vous pouvez fournir des valeurs pour ces paramètres à l'invite de commandes.

    Vous pouvez non seulement spécifier des paramètres au niveau de l'invite de commandes, mais aussi utiliser des variables d'environnement telles que %COMPUTERNAME% dans le fichier ICF. Si vous utilisez une variable d'environnement dans le fichier ICF, notez qu'une paire nom/valeur de même nom est prioritaire par rapport à la variable d'environnement.

Notes

La commande nscontrol update compare le code XML dans les fichiers ICF et ADF avec les bases de données. Pour chaque modification valide, nscontrol update met à jour la base de données selon la spécification du fichier XML.

Certains éléments des fichiers ICF et ADF ne peuvent pas être mis à jour. Quelques éléments de ces fichiers spécifient des options qui ne peuvent pas être modifiées sans supprimer puis recréer l'instance. Pour plus d'informations, consultez les sections Instance Configuration File Reference et Application Definition File Reference. Chaque rubrique contient une ligne Mises à jour indiquant si le champ peut être mis à jour.

ms162829.note(fr-fr,SQL.90).gifImportant :
Nous recommandons fortement de sauvegarder les bases de données d'instance et d'application avant de mettre à jour l'instance. L'opération de mise à jour peut ne pas aboutir. Dans ce cas, les bases de données d'instance et d'application peuvent être laissées dans un état incohérent où les instances et les applications risquent d'être inexploitables et où des données peuvent être perdues.
ms162829.note(fr-fr,SQL.90).gifRemarque :
Vérifiez tous les fichiers ADF et le fichier ICF avant d'exécuter nscontrol update pour réduire le risque d'erreurs. Si l'erreur se produit quand même, corrigez le fichier, puis exécutez de nouveau nscontrol update.

Si vous utilisez Notification Services Standard Edition et que vous spécifiez des options dans les fichiers ADF qui ne sont pas prises en charge par cette édition, nscontrol update s'arrête sans mettre à jour l'instance.

Si vous modifiez les métadonnées de la classe d'abonnement dans le fichier ADF, nscontrol update renomme la table de classe d'abonnement existante, NS<*subscription_class>*Subscriptions en NS<*subscription_class>*SubscriptionsOld pour sauvegarder les données d'abonnement. Si par la suite vous mettez à jour la même classe d'abonnement, lorsque nscontrol update tente de renommer la table, cette commande échoue si NS<*subscription_class>*SubscriptionsOld existe toujours. Pour plus d'informations, consultez Mise à jour d'une application.

Si une classe d'événements ou une classe de notification change dans le fichier ADF, nscontrol update supprime les tables existantes pour ces classes.

La commande nscontrol update affiche généralement toutes les modifications apportées aux fichiers ICF et ADF pendant l'exécution de la mise à jour. Cependant, si l'instance a recours au chiffrement des arguments, nscontrol update n'affiche pas les arguments chiffrés.

Avant de mettre à jour une instance, vérifiez que tout code qui crée une table, une vue, un index ou un autre objet de SQL Server vérifie et supprime ou renomme tout objet existant portant le même nom. Ceci est essentiel, car nscontrol update ne supprime ou ne renomme pas automatiquement les éventuels objets SQL Server de même nom définis par l'utilisateur. En supprimant ou en renommant explicitement l'objet SQL Server, vous évitez une erreur de doublon d'objet. Pour plus d'informations, consultez Définition des tables de chroniques d'événements.

Autorisations

Le compte utilisé pour exécuter nscontrol update ou le nom d'ouverture de session SQL Server que vous avez spécifié dans l'argument -sqlusername doit être membre du rôle de base de données db_owner dans toutes les bases de données d'instance et d'application qui sont affectées par la commande nscontrol update, ou doit être membre du rôle de serveur fixe sysadmin.

Le compte doit également être autorisé à exécuter les fichiers binaires de Notification Services. Cette autorisation est octroyée aux membres des groupes Administrateurs et SQLServerNotificationServicesUser Windows.

Exemples

Les exemples suivants illustrent la mise à jour d'une instance.

A. Mise à jour d'une instance, affichage de toutes les différences

Cet exemple illustre la mise à jour d'une instance avec un fichier ICF nommé InstanceConfig.xml. La commande nscontrol update affiche toutes les différences détectées dans le fichier de configuration mis à jour et dans les fichiers ADF. Un message vous invite à répondre oui ou non avant la poursuite de la mise à jour.

La commande nscontrol utilise l'authentification Windows pour la connexion à SQL Server.

nscontrol update -in "C:\NS\Stock\InstanceConfig.xml" 
    -verbose

B. Mise à jour d'une instance lorsque le fichier ICF contient des paramètres

Cet exemple illustre la fourniture de valeurs aux paramètres BaseDirectoryPath,NSHost et SqlServer lors de la mise à jour d'une instance. La commande nscontrol utilise l'authentification Windows pour la connexion à SQL Server.

nscontrol update -in "C:\NS\Stock\InstanceConfig.xml" 
    BaseDirectoryPath=C:\NS\Samples\Stock NSHost=nsuetest 
    SqlServer=nsuetest

C. Mise à jour d'une instance lors de l'utilisation du chiffrement des arguments

Cet exemple illustre la mise à jour d'une instance lors de l'utilisation du chiffrement des arguments. La commande nscontrol utilise l'authentification Windows pour la connexion à SQL Server.

nscontrol update -in "C:\NS\Stock\InstanceConfig.xml" 
    -argumentkey "MyArgumentKey"

D. Exécution forcée d'une mise à jour sans invite

Cet exemple illustre la mise à jour d'une instance sans invite d'acceptation de la mise à jour. La commande nscontrol utilise l'authentification Windows pour la connexion à SQL Server.

nscontrol update -in "C:\NS\Stock\InstanceConfig.xml" -force

E. Mise à jour d'une instance à l'aide de l'authentification SQL Server

ms162829.note(fr-fr,SQL.90).gifImportant :
Utilisez si possible l'authentification Windows.

Cet exemple illustre la mise à jour d'une instance en utilisant l'authentification SQL Server pour la connexion à SQL Server. La commande nscontrol update affiche toutes les différences détectées dans le fichier de configuration mis à jour et les fichiers ADF. Un message vous invite à répondre oui ou non avant la poursuite de la mise à jour.

nscontrol update -in "C:\NS\Stock\InstanceConfig.xml" 
    -sqlusername SqlUser -sqlpassword sQl-P@sWd

Voir aussi

Référence

Utilitaire nscontrol

Autres ressources

Mise à jour des instances et des applications
EncryptArguments Element (ICF)

Aide et Informations

Assistance sur SQL Server 2005

Historique des modifications

Version Historique

5 décembre 2005

Nouveau contenu :
  • Informations supplémentaires relatives au groupe SQLServerNotificationServicesUser Windows.