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.Important : 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.
Important : |
---|
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. |
Remarque : |
---|
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
Important : |
---|
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
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 |
|