Activer PeopleTools pour prendre en charge Oracle Active Data Guard

Les versions 8.52 et supérieures de PeopleSoft PeopleTools prennent en charge Oracle Active Data Guard, qui permet de décharger des interrogations vers une base de secours physique.

Vous devez disposer des éléments suivants pour activer PeopleTools afin de prendre en charge Oracle Active Data Guard :

  • Base de données de secours physique pour laquelle Oracle Active Data Guard est activé
  • Service de base de données pouvant être démarré sur l'instance de base de données Oracle Active Data Guard
  • ID accès secondaire créé dans PeopleSoft
  • Schéma de base de données supplémentaire qui sera associé à l'ID accès secondaire
  • Lien de base de données qui utilise un service uniquement exécuté sur l'instance principale

À propos de l'implémentation d'Oracle Active Data Guard

Gardez à l'esprit les éléments importants suivants lors de la mise en oeuvre de la prise en charge d'Oracle Active Data Guard :

  • Les domaines de serveur d'applications PeopleSoft aux sites principal et secondaire doivent être configurés pour prendre en charge Oracle Active Data Guard pour que le déchargement des interrogations fonctionne après une permutation ou un basculement.
  • L'utilisateur PSFTADG2 aura besoin de son propre lien de base de données pour accéder à la base de données de secours. Lors de la création manuelle du nouveau lien de base de données, assurez-vous que le nom du lien de base de données correspond au nom de la base de données cible, y compris DB_DOMAIN si défini.
  • IMPORTANT : Une fois que le serveur de domaine d'application PeopleTools est configuré pour prendre en charge Oracle Active Data Guard, l'application PeopleSoft ne démarre pas si le service PSQUERY n'est pas disponible. Si la base de secours n'est pas disponible, le service PSQUERY doit être démarré sur la base principale. Il peut être réinstallé dans la base de secours lorsque celle-ci est à nouveau disponible sans redémarrer l'application.

Note :

Si vous prévoyez d'ouvrir la base de données de secours en tant que base de secours instantanée à des fins de test, vous devez d'abord déplacer le service PSQUERY vers la base principale.

Si votre mise en oeuvre PeopleSoft sur place est déjà configurée pour utiliser Oracle Active Data Guard pour décharger des interrogations, vous devez vous assurer que la configuration du serveur d'applications et du programmateur de processus est transférée aux premier et deuxième déploiements OCI. L'utilisateur de schéma est déjà associé à l'ID accès secondaire PeopleSoft dans la base de données. Dans notre cas, ce schéma supplémentaire est appelé PSFTADG2.

Implémenter Oracle Active Data Guard

Si vous choisissez de mettre en oeuvre la nouvelle prise en charge d'Active Data Guard pour le déchargement des interrogations, suivez la procédure référencée ici pour activer la prise en charge de PeopleTools pour Oracle Active Data Guard.

Configurer les serveurs de base de données principale et de secours pour Oracle Active Data Guard

Le serveur de base de données principal doit accéder à un service de la base de secours au moyen d'un lien de base de données. Commencez par créer ce service de base de données et ajoutez les entrées tnsnames.ora pour pouvoir résoudre l'adresse réseau de la base de données de secours.

  1. Ajoutez un service de base de données basé sur les rôles aux régions principale et secondaire.

    Ajoutez le service de base de données basé sur les rôles PSQUERY dans les régions principale et secondaire, à exécuter uniquement lorsque la base de données remplit le rôle PHYSICAL_STANDBY. Des exemples de services ajoutés sont les suivants :

    Principale
    $ srvctl add service -db <primary DB unique name> -pdb HR92U033 -service PSQUERY -preferred "CDBHCM1,CDBHCM2" failovermethod BASIC -failovertype SELECT -notification TRUE -role PHYSICAL_STANDBY -failoverretry 10 -failoverdelay 3
    De secours
    $ srvctl add service -db <standby DB unique name> -pdb HR92U033 -service PSQUERY -preferred "CDBHCM1,CDBHCM2" failovermethod BASIC -failovertype SELECT -notification TRUE -role PHYSICAL_STANDBY -failoverretry 10 -failoverdelay 3
    
  2. Créez un fichier tnsnames.ora "include file", ou ifile, avec une chaîne de connexion TNS que les rapports qui s'exécutent sur la base de données de secours Oracle Active Data Guard peuvent utiliser pour enregistrer des informations sur les travaux dans la base de données principale. Placez le fichier ifile dans le répertoire $TNS_ADMIN sur chaque noeud de base de données RAC sur les sites principal et de secours.
    Cela permet aux rapports exécutés sur la base de données Oracle Active Data Guard de se reconnecter à la base principale et de mettre à jour les données d'exécution dans la base.

    Note :

    Ne placez pas cet alias de chaîne de connexion TNS sur l'un des niveaux intermédiaires. Cette chaîne de connexion n'est utilisée que par le lien de base de données créé à une étape ultérieure sur les serveurs de base de données.

    Par exemple, ce qui suit est une chaîne de connexion TNS placée dans un fichier ifile nommé tns_ps_adg.ora.

    HR92U033_PRIMARY =
    (DESCRIPTION_LIST =
       (LOAD_BALANCE=off)(FAILOVER=on)
       (DESCRIPTION =
           (CONNECT_TIMEOUT=5)(TRANSPORT_CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
           (ADDRESS_LIST =
               (LOAD_BALANCE=on)
               (ADDRESS = (PROTOCOL = TCP)(HOST = iadexadb-bw5wn-scan.exadbprivate.ebscloudmaavcn.oraclevcn.com)(PORT = 1521))
           )
            (CONNECT_DATA =
               (SERVER = DEDICATED)
               (SERVICE_NAME = HR92U033_ONLINE)
           )
        )
        (DESCRIPTION =
           (CONNECT_TIMEOUT=5)(TRANSPORT_CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
           (ADDRESS_LIST =
               (LOAD_BALANCE=on)
               (ADDRESS = (PROTOCOL = TCP)(HOST = phxexadb-krppw-scan.dbprivateexa.maacloud2vcn.oraclevcn.com)(PORT = 1521))
           )
            (CONNECT_DATA =
               (SERVER = DEDICATED)
               (SERVICE_NAME = HR92U033_ONLINE)
           )
        )
     )
  3. Ajoutez une ligne pour une directive IFILE au bas des fichiers tnsnames.ora de la base de données afin d'inclure le fichier IFILE dans la définition tnsnames.
    IFILE=TNS_ADMIN full path/ tns_ps_adg.ora

Mettre à jour la base de données pour Oracle Active Data Guard

Mettez à jour le contenu de la base de données pour qu'il contienne à la fois un pointeur utilisé par l'application PeopleSoft sur le site de secours pour localiser la base de données principale et le lien de base de données utilisé à cette fin. Les données insérées à la base principale sont propagées à la base de secours par Oracle Data Guard.

  1. Insérez une nouvelle rangée dans la table PS.PSDBOWNER de la base de données principale.
    Cette rangée permettra aux serveurs d'applications de s'authentifier auprès de la base de données de secours Oracle Active Data Guard.
    1. Log in to one of the Oracle Exadata Database Service on Dedicated Infrastructure database servers as the oracle OS user.
    2. Approvisionnez l'environnement de base de données (CDBHCM.env).
    3. Démarrez une session SQL*Plus et insérez la nouvelle ligne.
      L'exemple suivant utilise le nom de la base de données enfichable
      HR92U033
      :
      sqlplus / as sysdba 
      
      SQL> ALTER SESSION SET CONTAINER = HR92U033;
      SQL> INSERT INTO PS.DBOWNER VALUES (‘PSFTADG’, ‘EMDBO’);
      
      COMMIT;
  2. Créez le lien de base de données sur la base principale.

    Voir les étapes sous Mise en oeuvre d'Oracle Active Data Guard pour créer un lien de base de données sur la base principale.

  3. Utilisez SQL*Plus pour vous connecter au deuxième schéma de base de données (PSFTADG2) et créer le lien de base de données.

    Note :

    Cela utilise l'alias TNS HR92U033_PRIMARY, un service qui s'exécute uniquement lorsque la base de données a le rôle principal.
    Par exemple :
    CREATE DATABASE LINK PRIMARY CONNECT TO EMDBO IDENTIFIED BY password USING 'HR92U033_PRIMARY';