Partager via


Procédure : migrer les instances Notification Services 2.0 vers SQL Server 2005 (invite de commandes)

Mis à jour : 14 avril 2006

Si vous avez une instance existante de Notification Services 2.0 qui s'exécute sur Microsoft SQL Server 2000, vous pouvez mettre à niveau cette instance vers Microsoft SQL Server 2005. Pour effectuer la mise à niveau, vous devez mettre à niveau les bases de données et l'instance de Notification Services. La procédure suivante montre comment mettre à niveau une instance à l'aide d'utilitaires d'invite de commandes.

ms143519.note(fr-fr,SQL.90).gifImportant :
Les instances de Notification Services peuvent être déployées dans un grand nombre de configurations différentes. Pour développer et tester vos propres procédures de migration, aidez-vous des instructions de la procédure suivante.

Pour préparer les serveurs à la mise à niveau

  1. Sur un serveur où l'instance est inscrite, désactivez l'instance de Notification Services à l'aide de la version Notification Services 2.0 de l'utilitaire d'invite de commandes nscontrol :

    1. Dans le menu Démarrer, pointez sur Tous les programmes, sur Microsoft SQL Server 2005, sur Outils de configuration, puis cliquez sur Invite de commandes pour Notification Services.
    2. Pour désactiver l'instance, tapez la commande suivante :
      nscontrol disable -nameinstance_name
  2. Sur chaque serveur qui exécute le service Windows NS$instanceName, arrêtez le service :

    1. Pour arrêter l'instance, ouvrez une fenêtre d'invite de commandes Notification Services 2.0 et tapez la commande suivante :
      **net stop NS$**instanceName
  3. Sur chaque serveur doté d'un fournisseur d'événements, d'un générateur, d'un serveur de distribution ou d'une interface de gestion d'abonnement, annulez l'inscription de l'instance.

    1. Tapez ce qui suit dans la fenêtre d'invite de commandes Notification Services :
      nscontrol unregister -nameinstance_name
    2. Fermez la fenêtre d'invite de commandes.

Pour mettre à niveau le moteur de base de données et installer Notification Services

  1. À l'aide du programme d'installation de SQL Server 2005, mettez à niveau le moteur de base de données de SQL Server 2000 vers SQL Server 2005. Pour plus d'informations, consultez Mise à niveau du moteur de base de données.

  2. Sur chaque serveur qui exécute un fournisseur d'événements, un générateur, un serveur de distribution ou une interface de gestion d'abonnement, installez SQL Server 2005Notification Services.

    Si Notification Services et les bases de données sont situés sur le même serveur, vous pouvez mettre la base de données à niveau et installer Notification Services en même temps.

    Les installations de Notification Services 2.0 ne sont pas altérées durant le processus de mise à niveau.

Pour migrer l'instance de Notification Services

  1. Sur chaque serveur où l'instance a été précédemment inscrite, inscrivez l'instance :

    1. Dans le menu Démarrer, pointez sur Tous les programmes, sur Microsoft SQL Server 2005, sur Outils de configuration, puis cliquez sur Invite de commandes pour Notification Services.
    2. Pour inscrire l'instance, utilisez la commande nscontrol register. La commande suivante montre comment inscrire l'instance et créer un service Windows qui se connecte au serveur de la base de données à l'aide de l'authentification Windows :
      nscontrol register -nameinstanceName-serverdatabaseServer -service****-serviceusername** username -servicepassword password
      Pour plus d'informations, tapez nscontrol register -? ou consultez Commande nscontrol register.
  2. Sur un serveur, tapez la commande suivante pour réparer les métadonnées d'une instance :

    nscontrol repair -nameinstance_name-databaseinstanceDatabaseName-schemainstanceDatabaseSchema

  3. Pour mettre à niveau les données d'instance et d'application, tapez la commande suivante :

    nscontrol upgrade -nameinstanceName

  4. Modifiez les règles de création de notifications dans le fichier de définition d'application (ADF) pour chaque application hébergée par l'instance.

    • Modifiez toutes les règles de création de notifications qui utilisent la fonction Notify() afin qu'elles utilisent la syntaxe INSERT INTO. Par exemple, convertissez la règle Notification Services 2.0 suivante :

      SELECT dbo.FlightNotificationsNotify(S.SubscriberId, 
      S.DeviceName, S.SubscriberLocale, E.Carrier, E.LeavingFrom, 
      E.GoingTo, E.Price, E.Conditions)
          FROM FlightEvents E, FlightSubscriptions S
          WHERE E.LeavingFrom = S.LeavingFrom
          AND E.GoingTo = S.GoingTo
          AND ( (E.Carrier = S.Carrier) OR (S.Carrier = '*') )
          AND E.Price < S.Price
      

      Dans la syntaxe suivante, qui n'utilise plus la fonction Notify(), mais sélectionne à la place les données et les insère dans une vue nommée d'après la classe de notification (FlightNotifications) :

      INSERT INTO FlightNotifications(SubscriberId, DeviceName, 
      SubscriberLocale, Carrier, LeavingFrom, GoingTo, Price, 
      Conditions)
      SELECT S.SubscriberId, S.DeviceName, S.SubscriberLocale, 
      E.Carrier, E.LeavingFrom, E.GoingTo, E.Price, E.Conditions
          FROM FlightEvents E, FlightSubscriptions S
          WHERE E.LeavingFrom = S.LeavingFrom
          AND E.GoingTo = S.GoingTo
          AND ( (E.Carrier = S.Carrier) OR (S.Carrier = '*') )
          AND E.Price < S.Price
      
    • Modifiez les numéros de version dans les fichiers ADF et ICF. (Facultatif)

    • Si vous avez déplacé l'instance, mettez à jour les valeurs SystemName dans le fichier ADF et la valeur SqlServerSystem dans le fichier ICF. Ces valeurs peuvent être des paramètres, ce qui indique que les valeurs sont dans un nœud ParameterDefaults ou sont fournies lors de la création de l'instance.

  5. Pour mettre à jour l'instance de Notification Services, tapez la commande suivante :

    nscontrol update -inICFPath\ICFName.xml

    Les arguments exacts varient selon le mode d'authentification.

  6. Pour activer l'instance de Notification Services, tapez la commande suivante :

    nscontrol enable -nameinstanceName

    Les arguments exacts varient selon le mode d'authentification.

  7. Remplacez tous les composants personnalisés par de nouveaux composants compilés à l'aide des assemblys de SQL Server 2005 et de Microsoft .NET Framework 2.0.

  8. Si vous utilisez COM interop, réinscrivez l'assembly Notification Services principal. Pour plus d'informations, consultez Procédure : enregistrer l'assembly de base de Notification Services pour COM Interop.

  9. Lorsque vous êtes prêt à démarrer l'instance, tapez la commande suivante sur chaque serveur qui exécute les composants du moteur Notification Services :

    **net start NS$**instanceName

Voir aussi

Tâches

Migration des instances Notification Services 2.0 vers SQL Server 2005
Procédure : migrer les instances Notification Services 2.0 vers SQL Server 2005 (SQL Server Management Studio)

Autres ressources

Utilitaire nscontrol

Aide et Informations

Assistance sur SQL Server 2005