Le clonage d'environnement PeopleSoft
Date de publication : 21/03/2007 , Date de mise à jour : 21/03/2007
Par
Jaouad Zouaghi (autres articles)
Administration PeopleSoft : Clonage d'environnement
I. Introduction
II. Base de données
II-1. Partie Oracle
II-2. Partie PeopleSoft
III. Partie PeopleSoft
III-1. Application Server
III-2. Process Scheduler
IV. WebServer
IV-1. Création automatique
IV-2. Création Manuelle
I. Introduction
Lorsqu'une application PeopleSoft est en production, il est nécessaire d'avoir des bases de pré-production, de recette et de développement afin de pouvoir suivre le cheminement normal d'un développement jusqu'à la mise en production.
Dans ce document nous allons voir comment mettre en place un environnement PeopleSoft à partir de la production : Clonage.
Cette documentation concernant la mise en place d'une copie de l'environnement de la production peut également servir lorsque nous avons besoin uniquement de rafraichir les données.
La configuration :
OS : AIX 5.5
Base de données : Mono Instance Oracle standart 10.2.0.1
Peopletools : 8.46.06
Tuxedo : 8.1
Webserver : IBM Websphere 5.1
Situation : clonage de la base de production (Prod) vers une pré-production: (prgprd)
Nous allons voir les trois parties essentielles :
- Base de données
- Tools (Appserv et PRCS )
- Webserver
II. Base de données
Il existe une multitude de documentation qui explique comment cloner une base de données Oracle. Nous ne reviendrons pas là dessus. Je vous conseille, si vous n'êtes toujours pas familier avec cette mécanique assez simple, une documentation très simple :
-
Copie de bases de données par
Orafrance.
Si vous souhaitez avoir une vue plus précise sur les mécanismes de la sauvegarde, restauration totale et partielle, je vous invite à lire la documentation suivante :
-
Sauvegarde et restauration par
Jaouad Zouaghi
Pour information, je vous rappelle la mécanique : On démarre la base en mode
NoMount, on recrée les controfiles, ce qui permet non seulement de pouvoir générer de nouveaux controfiles, mais également de mettre à jour le tablespace SYSTEM et les headers (entête) de tous les tablespaces.
Une ouverture de la base en mode RESETLOGS est obligatoire vu que le numéro de séquence repart à zéro.
Lorsque cette tâche de copie et de restauration Oracle a été effectuée, il reste encore quelques actions, qui se divisent en deux parties. La première concerne l'instance Oracle et la seconde est une mise à jour du dictionnaire PeopleSoft.
II-1. Partie Oracle
Ici il s'agit essentiellement de l'identification de la base.
Dans un premier temps nous allons mettre à jour le GLOBAL NAME :
SQL > select * from global_name ;
GLOBAL_NAME
PROD
SQL > ALTER DATABASE RENAME GLOBAL_NAME TO PRGPRD ;
Base de données modifiée.
SQL > select * from global_name ;
GLOBAL_NAME
PRGPRD
|
Une autre mise à jour importante est celle de l'ID de la base. L'ID de la base est un numéro qui va identifier de manière unique la base de données.
SQL > SELECT dbid, name FROM v$database ;
DBID NAME
2058528667 PRGPRD
|
Pour Pouvoir mettre à jour ce numéro d'identification, Oracle met à notre disposition un Binaire : NID pour New identification number
Tout d'abord il faut redémarrer la base en mode mount. C'est assez logique car le nid met à jour les entêtes de fichiers de données ( Header ), le tablespace System et enfin les contrôlfiles, donc il a besoin d'avoir monter les fichiers de données avec l'instance Oracle.
Démarrer la base en Mode Mount :
SQL > startup mount
ORACLE instance started.
Total System Global Area 3472883712 bytes
Fixed Size 2075216 bytes
Variable Size 788530608 bytes
Database Buffers 2667577344 bytes
Redo Buffers 14700544 bytes
Database mounted.
|
Ensuite lancer le NID :
sproerp07- oracle: / home/ oracle> nid
DBNEWID: Release 10 .2 .0 .2 .0 - Production on Tue Feb 20 10 :44 :36 2007
Copyright (c) 1982 , 2005 , Oracle. All rights reserved.
Keyword Description (Default )
TARGET Username/ Password (NONE)
DBNAME New database name (NONE)
LOGFILE Output Log (NONE)
REVERT Revert failed change NO
SETNAME Set a new database name only NO
APPEND Append to output log NO
HELP Displays these messages NO
sproerp07- oracle: / home/ oracle>
|
NID est présent dans le répertoire $ORACLE_HOME/bin
nid target= ' sys as sysdba ' logfile= / home/ ora10G/ nid_PRGPRD.log
DBNEWID: Release 10 .2 .0 .2 .0 - Production on Tue Feb 20 10 :46 :16 2007
Copyright (c) 1982 , 2005 , Oracle. All rights reserved.
Password:
Connected to database PRGPRD (DBID= 2058528667 )
Connected to server version 10 .2 .0
Control Files in database :
/ oracle/ ctl/ prgprd/ control01.ctl
/ oracle/ ctl/ prgprd/ control02.ctl
/ oracle/ ctl/ prgprd/ control03.ctl
Changing database ID from 2058528667 to 1942856571
Control File / oracle/ ctl/ prgprd/ control01.ctl - modified
Control File / oracle/ ctl/ prgprd/ control02.ctl - modified
(...)
Control File / oracle/ ctl/ prgprd/ control03.ctl - dbid changed
Instance shut down
Database ID for database PRGPRD changed to 1942856571 .
All previous backups and archived redo logs for this database are unusable.
Database is not aware of previous backups and archived logs in Recovery Area.
Database has been shutdown, open database with RESETLOGS option .
Succesfully changed database ID.
DBNEWID - Completed succesfully.
|
Nous pouvons apercevoir notre nouvel ID.
La base ayant été arrêté par NID, il convient de la redémarrer en effectuant un open resetlogs nécessaire suite à notre nouvel ID.
SQL * Plus: Release 10 .2 .0 .2 .0 - Production on Tue Feb 20 10 :48 :34 2007
Copyright (c) 1982 , 2005 , Oracle. All Rights Reserved.
SQL > conn / as sysdba
Connected to an idle instance.
SQL > startup mount
ORACLE instance started.
Total System Global Area 3472883712 bytes
Fixed Size 2075216 bytes
Variable Size 788530608 bytes
Database Buffers 2667577344 bytes
Redo Buffers 14700544 bytes
Database mounted.
SQL > alter database open resetlogs ;
Database altered.
|
Si nous vérifions à nouveau l'ID :
SQL > SELECT dbid, name FROM v$database ;
DBID NAME
1942856571 PRGPRD
|
Bien sûr ne pas oublier de mettre à jour la partie Net*8 : Listener et Résolution de nom, uniquement s'il s'agit d'une nouvelle base.
II-2. Partie PeopleSoft
Ensuite nous allons nous attaquer à ce qui concerne la mise à jour du dictionnaire PeopleSoft via la partie Oracle.
Il s'agit donc de mettre à jour les références de la production par la nouvelle base.
DELETE PS.PSDBOWNER;
INSERT INTO PS.PSDBOWNER (DBNAME,OWNERID) values (' PRGPRD ' ,' SYSADM ' );
COMMIT ;
|
La table PSDBOWNER va permettre d'identifier de manière précise à quelle utilisateur appartient une base de données au sens PeopleSoft. De plus lors de la connexion, il va dire quel schéma Oracle utiliser.
UPDATE SYSADM.PSOPTIONS
SET SYSTEMTYPE = ' INT '
,SHORTNAME = ' PRGPRD '
,LONGNAME = ' PRGPRD '
,GUID = ' '
,F1URL = ' http://10.2.2.23/PSOL/htmldoc/index.htm '
,CTRLF1URL = ' http://10.2.2.23/PSOL/htmldoc/index.htm ' ;
COMMIT ;
|
Ici nous mettons à jour les références de la nouvelle base. Le GUID est tout comme l'identification number, le numéro qui identifie de manière unique une base de données PeopleSoft.
Le F1URL et le CTRLF1URL indique à PeopleSoft ou trouver l'aide lorsque celle ci est installé.
La mise à jour de cette identification se fait en deux temps. La première est de mettre à jour à blanc, le GUID dans la table PSOPTIONS. Ensuite lors du démarrage des Applications servers, un nouvel GUID lui sera attribué.
Exemple :
SQL > select shortname ,guid from psoptions ;
SHORTNAME GUID
PRGPRD ee03c76c- 1dd1- 11b2- a51a- c6a27d6b7216
SQL > update psoptions set guid = ' ' ;
1 ligne mise à jour.
SQL > commit ;
Validation effectuée.
SQL > select shortname ,guid from psoptions ;
SHORTNAME GUID
PRGPRD
|
On redémarre les Applications servers :
SQL > psadmin - c boot - d PRGPRD
SQL > select shortname ,guid from psoptions
SHORTNAME GUID
PRGPRD 81851b12- 1dd2- 11b2- a520- c6a27d6b7216
|
Le GUID a été modifié.
Mise à jour de la PS_CDM_DIST_NODE :
UPDATE sysadm.PS_CDM_DIST_NODE
SET DISTNODENAME = ' Node FINA '
,OPSYS = ' 4 '
,FTPID = ' psoft84 '
,OPERPSWD = ' zuxGwr6qWiimqIVQLgo8HA== '
,FTPADDRESS = ' 127.0.0.1 '
,FTPDIRECTORY = ' /psoftsp1/psreports '
,URL = ' http://127.0.0.1/psreports/PRGPRD '
,WINNETWORKPATH = ' '
,DIRLOCATION = ' '
,URI_HOST = ' '
,URI_PORT = ' 0 '
,URI_QUERY = ' '
,URI_RESOURCE = ' '
,URI_SCHEME = ' '
,URI_RPT = ' http://127.0.0.1/psc/PREPRD/EMPLOYEE/ERP/c/CDM_RPT.CDM_RPT.GBL?Page=CDM_RPT_INDEX ' | | ' & ' | | ' Action=U ' | | ' & ' | | ' CDM_ID= '
,CDM_DIR_TEMPLATE= ' %DBNAME%/%CURRDATE%/%REPORTID% '
,DESCRLONG = ' Noeud de distribution de la base de PREPRD ' ;
COMMIT ;
|
La table PS_CDM_DIST_NODE définit les paramètres du nœud de distribution de l'application PeopleSoft. Notamment où va être stocké les fichiers suite aux traitements.
SELECT * FROM PS_CDM_LIST
WHERE prcsinstance = :1
|
Mise à jour des Mots de passe :
Mise à jour des mots de passe utilisateurs :
Ici nous allons mettre à jour les mots de passe utilisateurs : ou le mot de passe est égal au nom d'utilisateur. La table impactée est la table PSOPRDEFN.
Le champ OPRID correspond à l'utilisateur et le champ OPERPSWD à celui du mot de passe.
Le champs encrypted doit être à 0 pour que DATA MOVER ré encrypte ce mot de passe.
Attention, une modification du mot de passe de l'utilisateur par lequel se connecte le serveur Web et les AS et PRCS, sinon il faudra reconfigurer toute la chaine.
Le changement du mot de passe de l'utilisateur par lequel se connectent les APPSERV et les PRCS nécessite la reconfiguration de ces derniers, et de le reconfigurer via PSADMIN.
Quant à l'utilisateur du serveur Web, il faut modifier son mot de passe dans le fichier configuration.properties dans le répertoire :
|
$PS_HOME/ webserv/ serveurNode_serveurNode_SERVERNAME/ peoplesoft.ear/ PORTAL/ WEB- INF/ psftdocs
|
Pour modifier le mot de passe du schéma (au sens Oracle) propriétaire de l'application PeopleSoft, la procédure est plus simple :
L'acces password correspond à la colonne symbolicid de la table psoprdefn. TOTO correspond au nouveau password. Cette procédure permet de changer et de crypter le mot de passe.
Mise à zéro des séquences :
Dans cette séquence nous allons remettre à 0 les différentes séquences présentes dans PeopleSoft. Les séquences sont gérées dans la table :
SQL > SELECT * FROM PS_PRCSSEQUENCE ;
PR SEQUENCENO MIN_SEQ_NBR MAX_SEQ_NBR
0 256899 1 9999999
1 141179 1 9999999
2 141860 1 9999999
3 48710 1 9999999
4 7 1 9999999
|
La colonne PRCSSEQKEY recense les différentes séquences :
0 = Process Instance
1 = Report Instance
2 = Transfer Instance
|
Il suffit pour ce faire de remettre à 0 la colonne SEQUENCENO.
Nettoyages des tables du Process scheduler :
Ici nous supprimons les données de certaines tables notamment les tables de process schédulere créons les index et enfin mettons à jour les statistiques :
TRUNCATE TABLE SYSADM.PS_CDM_AUTH;
TRUNCATE TABLE SYSADM.PS_CDM_FILE_LIST;
TRUNCATE TABLE SYSADM.PS_CDM_LIST;
TRUNCATE TABLE SYSADM.PS_CDM_LIST_ARCH;
TRUNCATE TABLE SYSADM.PS_CDM_TEXT;
TRUNCATE TABLE SYSADM.PS_CDM_TRANSFER;
TRUNCATE TABLE SYSADM.PS_CDM_TRNFR_RJCT;
TRUNCATE TABLE SYSADM.PS_MESSAGE_LOG;
TRUNCATE TABLE SYSADM.PS_MESSAGE_LOGPARM;
TRUNCATE TABLE SYSADM.PS_PRCSRQSTDIST;
TRUNCATE TABLE SYSADM.PS_PRCSRQSTNOTIFY;
TRUNCATE TABLE SYSADM.PSAPMSGARCHPC;
TRUNCATE TABLE SYSADM.PSAPMSGARCHPD;
TRUNCATE TABLE SYSADM.PSAPMSGARCHPH;
TRUNCATE TABLE SYSADM.PSAPMSGARCHPT;
TRUNCATE TABLE SYSADM.PSAPMSGARCHSC;
TRUNCATE TABLE SYSADM.PSAPMSGARCHST;
TRUNCATE TABLE SYSADM.PSAPMSGPCONDATA;
TRUNCATE TABLE SYSADM.PSAPMSGPUBCERR;
TRUNCATE TABLE SYSADM.PSAPMSGPUBCERRP;
TRUNCATE TABLE SYSADM.PSAPMSGPUBCON;
TRUNCATE TABLE SYSADM.PSAPMSGPUBDATA;
TRUNCATE TABLE SYSADM.PSAPMSGPUBERR;
TRUNCATE TABLE SYSADM.PSAPMSGPUBERRP;
TRUNCATE TABLE SYSADM.PSAPMSGPUBHDR;
TRUNCATE TABLE SYSADM.PSAPMSGSCONDATA;
TRUNCATE TABLE SYSADM.PSAPMSGSUBCERR;
TRUNCATE TABLE SYSADM.PSAPMSGSUBCERRP;
TRUNCATE TABLE SYSADM.PSAPMSGSUBCON;
TRUNCATE TABLE SYSADM.PSIBLOGDATA;
TRUNCATE TABLE SYSADM.PSIBLOGDATAARCH;
TRUNCATE TABLE SYSADM.PSIBLOGERR;
TRUNCATE TABLE SYSADM.PSIBLOGERRP;
TRUNCATE TABLE SYSADM.PSIBLOGHDR;
TRUNCATE TABLE SYSADM.PSIBLOGHDRARCH;
TRUNCATE TABLE SYSADM.PSPRCSCHLDINFO;
TRUNCATE TABLE SYSADM.PSPRCSPARMS;
TRUNCATE TABLE SYSADM.PSPRCSQUE;
TRUNCATE TABLE SYSADM.PSPRCSRQST;
TRUNCATE TABLE SYSADM.PSPRCSRQSTFILE;
TRUNCATE TABLE SYSADM.PSPRCSRQSTMETA;
TRUNCATE TABLE SYSADM.PSPRCSRQSTSTRNG;
TRUNCATE TABLE SYSADM.PSPRCSRQSTTEXT;
TRUNCATE TABLE SYSADM.PSPRCSRQSTTIME;
TRUNCATE TABLE SYSADM.PSPRCSRQSTXFER;
TRUNCATE TABLE SYSADM.PSRF_RATTR_TBL;
TRUNCATE TABLE SYSADM.PSRF_RINFO_TBL;
TRUNCATE TABLE SYSADM.PSRF_RSCRTY_TBL;
DELETE SYSADM.PSRF_FINFO_TBL WHERE PSRF_PRNT_FLDR_ID < > 0 ;
analyze table sysadm.PSPRCSRQST estimate statistics ;
analyze table sysadm.PSPRCSQUE estimate statistics ;
analyze table sysadm.PSPRCSCHLDINFO estimate statistics ;
analyze table sysadm.PSPRCSPARMS estimate statistics ;
analyze table sysadm.PSPRCSRQSTTEXT estimate statistics ;
analyze table sysadm.PSPRCSRQSTXFER estimate statistics ;
analyze table sysadm.PS_PRCSRQSTDIST estimate statistics ;
analyze table sysadm.PS_MESSAGE_LOG estimate statistics ;
analyze table sysadm.PS_MESSAGE_LOGPARM estimate statistics ;
analyze table sysadm.PSPRCSRQSTFILE estimate statistics ;
analyze table sysadm.PSPRCSRQSTMETA estimate statistics ;
analyze table sysadm.PSPRCSRQSTSTRNG estimate statistics ;
analyze table sysadm.PSPRCSRQSTTIME estimate statistics ;
analyze table sysadm.PS_PRCSRQSTNOTIFY estimate statistics ;
analyze table sysadm.PS_CDM_LIST estimate statistics ;
analyze table sysadm.PS_CDM_AUTH estimate statistics ;
analyze table sysadm.PS_CDM_TEXT estimate statistics ;
analyze table sysadm.PS_CDM_FILE_LIST estimate statistics ;
analyze table sysadm.PS_CDM_TRANSFER estimate statistics ;
analyze table sysadm.PS_CDM_TRNFR_RJCT estimate statistics ;
analyze table sysadm.PS_CDM_LIST_ARCH estimate statistics ;
analyze table sysadm.PSAPMSGPUBHDR estimate statistics ;
analyze table sysadm.PSAPMSGPUBDATA estimate statistics ;
analyze table sysadm.PSAPMSGPUBCON estimate statistics ;
analyze table sysadm.PSAPMSGSUBCON estimate statistics ;
analyze table sysadm.PSAPMSGPUBERR estimate statistics ;
analyze table sysadm.PSAPMSGPUBERRP estimate statistics ;
analyze table sysadm.PSAPMSGPUBCERR estimate statistics ;
analyze table sysadm.PSAPMSGPUBCERRP estimate statistics ;
analyze table sysadm.PSAPMSGSUBCERR estimate statistics ;
analyze table sysadm.PSAPMSGSUBCERRP estimate statistics ;
analyze table sysadm.PSAPMSGPCONDATA estimate statistics ;
analyze table sysadm.PSAPMSGSCONDATA estimate statistics ;
analyze table sysadm.PSIBLOGHDR estimate statistics ;
analyze table sysadm.PSIBLOGDATA estimate statistics ;
analyze table sysadm.PSIBLOGERR estimate statistics ;
analyze table sysadm.PSIBLOGERRP estimate statistics ;
analyze table sysadm.PSAPMSGARCHPH estimate statistics ;
analyze table sysadm.PSAPMSGARCHPD estimate statistics ;
analyze table sysadm.PSAPMSGARCHPC estimate statistics ;
analyze table sysadm.PSAPMSGARCHSC estimate statistics ;
analyze table sysadm.PSAPMSGARCHPT estimate statistics ;
analyze table sysadm.PSAPMSGARCHST estimate statistics ;
analyze table sysadm.PSIBLOGHDRARCH estimate statistics ;
analyze table sysadm.PSIBLOGDATAARCH estimate statistics ;
analyze table sysadm.PSRF_RATTR_TBL estimate statistics ;
analyze table sysadm.PSRF_RSCRTY_TBL estimate statistics ;
analyze table sysadm.PSRF_RINFO_TBL estimate statistics ;
analyze table sysadm.PSRF_FINFO_TBL estimate statistics ;
DROP INDEX SYSADM.PS_CDM_AUTH
/
DROP INDEX SYSADM.PSACDM_AUTH
/
CREATE UNIQUE INDEX SYSADM.PS_CDM_AUTH ON sysadm.PS_CDM_AUTH (CONTENTID,
PRCSINSTANCE,
DISTID,
DISTIDTYPE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSACDM_AUTH ON sysadm.PS_CDM_AUTH (DISTIDTYPE) TABLESPACE
PSINDEX STORAGE (INITIAL 40000 NEXT 100000 MAXEXTENTS UNLIMITED
PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_CDM_FILE_LIST
/
CREATE UNIQUE INDEX SYSADM.PS_CDM_FILE_LIST ON sysadm.PS_CDM_FILE_LIST
(PRCSINSTANCE,
CONTENTID,
FILENAME) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_CDM_LIST
/
DROP INDEX SYSADM.PSACDM_LIST
/
CREATE UNIQUE INDEX SYSADM.PS_CDM_LIST ON sysadm.PS_CDM_LIST (PRCSINSTANCE,
CONTENTID) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSACDM_LIST ON sysadm.PS_CDM_LIST (DISTSTATUS,
TRANSFERINSTANCE,
PRCSINSTANCE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_CDM_LIST_ARCH
/
CREATE UNIQUE INDEX SYSADM.PS_CDM_LIST_ARCH ON sysadm.PS_CDM_LIST_ARCH (ARCHIVE_DT,
PRCSINSTANCE,
CONTENTID) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_CDM_TEXT
/
CREATE UNIQUE INDEX SYSADM.PS_CDM_TEXT ON sysadm.PS_CDM_TEXT (PRCSINSTANCE,
CONTENTID,
CDMTEXTTYPE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_CDM_TRANSFER
/
CREATE UNIQUE INDEX SYSADM.PS_CDM_TRANSFER ON sysadm.PS_CDM_TRANSFER
(TRANSFERINSTANCE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_CDM_TRNFR_RJCT
/
CREATE UNIQUE INDEX SYSADM.PS_CDM_TRNFR_RJCT ON sysadm.PS_CDM_TRNFR_RJCT
(TRANSFERINSTANCE,
PRCSINSTANCE,
CONTENTID,
TRANSFERSEQUENCENO) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_MESSAGE_LOG
/
CREATE UNIQUE INDEX SYSADM.PS_MESSAGE_LOG ON sysadm.PS_MESSAGE_LOG
(PROCESS_INSTANCE,
MESSAGE_SEQ) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_MESSAGE_LOGPARM
/
CREATE UNIQUE INDEX SYSADM.PS_MESSAGE_LOGPARM ON sysadm.PS_MESSAGE_LOGPARM
(PROCESS_INSTANCE,
MESSAGE_SEQ,
PARM_SEQ) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PRCSRQSTDIST
/
CREATE UNIQUE INDEX SYSADM.PS_PRCSRQSTDIST ON sysadm.PS_PRCSRQSTDIST (PRCSINSTANCE,
DISTID,
DISTIDTYPE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PRCSRQSTNOTIFY
/
CREATE INDEX SYSADM.PS_PRCSRQSTNOTIFY ON sysadm.PS_PRCSRQSTNOTIFY (PRCSINSTANCE,
DISTID,
DISTIDTYPE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGARCHPC
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGARCHPC ON sysadm.PSAPMSGARCHPC (PUBNODE,
CHNLNAME,
PUBID,
SUBNODE,
IB_SEGMENTINDEX) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGARCHPD
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGARCHPD ON sysadm.PSAPMSGARCHPD (PUBNODE,
CHNLNAME,
PUBID,
SEGMENTNO,
SUBSEGMENTNO,
DATASEQNO) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGARCHPH
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGARCHPH ON sysadm.PSAPMSGARCHPH (PUBNODE,
CHNLNAME,
PUBID,
EXTERNALMESSAGEID) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGARCHPT
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGARCHPT ON sysadm.PSAPMSGARCHPT (PUBNODE,
CHNLNAME,
PUBID,
SUBNODE,
IB_SEGMENTINDEX,
SEGMENTNO,
SUBSEGMENTNO,
DATASEQNO) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGARCHSC
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGARCHSC ON sysadm.PSAPMSGARCHSC (PUBNODE,
CHNLNAME,
PUBID,
MSGNAME,
SUBNAME,
IB_SEGMENTINDEX) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGARCHST
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGARCHST ON sysadm.PSAPMSGARCHST (PUBNODE,
CHNLNAME,
PUBID,
MSGNAME,
SEGMENTNO,
SUBSEGMENTNO,
DATASEQNO) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGPCONDATA
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGPCONDATA ON sysadm.PSAPMSGPCONDATA (PUBNODE,
CHNLNAME,
PUBID,
SUBNODE,
IB_SEGMENTINDEX,
SEGMENTNO,
SUBSEGMENTNO,
DATASEQNO) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGPUBCERR
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGPUBCERR ON sysadm.PSAPMSGPUBCERR (PUBNODE,
CHNLNAME,
PUBID,
SUBNODE,
IB_SEGMENTINDEX,
ERRORTIMESTAMP,
SEQNO) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGPUBCERRP
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGPUBCERRP ON sysadm.PSAPMSGPUBCERRP (PUBNODE,
CHNLNAME,
PUBID,
SUBNODE,
IB_SEGMENTINDEX,
ERRORTIMESTAMP,
SEQNO,
PARM_SEQ) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGPUBCON
/
DROP INDEX SYSADM.PSAPSAPMSGPUBCON
/
DROP INDEX SYSADM.PSBPSAPMSGPUBCON
/
DROP INDEX SYSADM.PSCPSAPMSGPUBCON
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGPUBCON ON sysadm.PSAPMSGPUBCON (PUBNODE,
CHNLNAME,
PUBID,
SUBNODE,
IB_SEGMENTINDEX) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSAPSAPMSGPUBCON ON sysadm.PSAPMSGPUBCON (CHNLNAME) TABLESPACE
PSINDEX STORAGE (INITIAL 40000 NEXT 100000 MAXEXTENTS UNLIMITED
PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSBPSAPMSGPUBCON ON sysadm.PSAPMSGPUBCON (CHNLNAME,
LASTUPDDTTM) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSCPSAPMSGPUBCON ON sysadm.PSAPMSGPUBCON (CHNLNAME,
PUBCONSTATUS,
PUBLISHTIMESTAMP,
PUBID,
SUBCHANNEL,
SUBNODE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGPUBDATA
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGPUBDATA ON sysadm.PSAPMSGPUBDATA (PUBNODE,
CHNLNAME,
PUBID,
SEGMENTNO,
SUBSEGMENTNO,
DATASEQNO) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGPUBERR
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGPUBERR ON sysadm.PSAPMSGPUBERR (PUBNODE,
CHNLNAME,
PUBID,
ERRORTIMESTAMP,
SEQNO) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGPUBERRP
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGPUBERRP ON sysadm.PSAPMSGPUBERRP (PUBNODE,
CHNLNAME,
PUBID,
ERRORTIMESTAMP,
SEQNO,
PARM_SEQ) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGPUBHDR
/
DROP INDEX SYSADM.PSAPSAPMSGPUBHDR
/
DROP INDEX SYSADM.PSBPSAPMSGPUBHDR
/
DROP INDEX SYSADM.PSCPSAPMSGPUBHDR
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGPUBHDR ON sysadm.PSAPMSGPUBHDR (PUBNODE,
CHNLNAME,
PUBID,
EXTERNALMESSAGEID) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSAPSAPMSGPUBHDR ON sysadm.PSAPMSGPUBHDR (CHNLNAME) TABLESPACE
PSINDEX STORAGE (INITIAL 40000 NEXT 100000 MAXEXTENTS UNLIMITED
PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSBPSAPMSGPUBHDR ON sysadm.PSAPMSGPUBHDR (CHNLNAME,
LASTUPDDTTM) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSCPSAPMSGPUBHDR ON sysadm.PSAPMSGPUBHDR (CHNLNAME,
PUBSTATUS,
PUBLISHTIMESTAMP,
PUBID,
SUBCHANNEL) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGSCONDATA
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGSCONDATA ON sysadm.PSAPMSGSCONDATA (PUBNODE,
CHNLNAME,
PUBID,
MSGNAME,
SEGMENTNO,
SUBSEGMENTNO,
DATASEQNO) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGSUBCERR
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGSUBCERR ON sysadm.PSAPMSGSUBCERR (PUBNODE,
CHNLNAME,
PUBID,
MSGNAME,
SUBNAME,
IB_SEGMENTINDEX,
ERRORTIMESTAMP,
SEQNO) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGSUBCERRP
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGSUBCERRP ON sysadm.PSAPMSGSUBCERRP (PUBNODE,
CHNLNAME,
PUBID,
MSGNAME,
SUBNAME,
IB_SEGMENTINDEX,
ERRORTIMESTAMP,
SEQNO,
PARM_SEQ) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSAPMSGSUBCON
/
DROP INDEX SYSADM.PSAPSAPMSGSUBCON
/
DROP INDEX SYSADM.PSBPSAPMSGSUBCON
/
DROP INDEX SYSADM.PSCPSAPMSGSUBCON
/
CREATE UNIQUE INDEX SYSADM.PS_PSAPMSGSUBCON ON sysadm.PSAPMSGSUBCON (PUBNODE,
CHNLNAME,
PUBID,
MSGNAME,
SUBNAME,
IB_SEGMENTINDEX) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSAPSAPMSGSUBCON ON sysadm.PSAPMSGSUBCON (CHNLNAME) TABLESPACE
PSINDEX STORAGE (INITIAL 40000 NEXT 100000 MAXEXTENTS UNLIMITED
PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSBPSAPMSGSUBCON ON sysadm.PSAPMSGSUBCON (CHNLNAME,
LASTUPDDTTM) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSCPSAPMSGSUBCON ON sysadm.PSAPMSGSUBCON (CHNLNAME,
SUBCONSTATUS,
PUBLISHTIMESTAMP,
PUBID,
SUBCHANNEL,
SUBNAME) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSIBLOGDATA
/
CREATE UNIQUE INDEX SYSADM.PS_PSIBLOGDATA ON sysadm.PSIBLOGDATA (ORIGPUBNODE,
CHNLNAME,
GUID,
MSGNAME,
APMSGVER,
DATASEQNO,
LOGTYPE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSIBLOGDATAARCH
/
CREATE UNIQUE INDEX SYSADM.PS_PSIBLOGDATAARCH ON sysadm.PSIBLOGDATAARCH
(ORIGPUBNODE,
CHNLNAME,
GUID,
MSGNAME,
APMSGVER,
DATASEQNO,
LOGTYPE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSIBLOGERR
/
CREATE UNIQUE INDEX SYSADM.PS_PSIBLOGERR ON sysadm.PSIBLOGERR (ORIGPUBNODE,
CHNLNAME,
GUID,
ERRORTIMESTAMP,
SEQNO) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSIBLOGERRP
/
CREATE UNIQUE INDEX SYSADM.PS_PSIBLOGERRP ON sysadm.PSIBLOGERRP (ORIGPUBNODE,
CHNLNAME,
GUID,
ERRORTIMESTAMP,
SEQNO,
PARM_SEQ) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSIBLOGHDR
/
CREATE UNIQUE INDEX SYSADM.PS_PSIBLOGHDR ON sysadm.PSIBLOGHDR (ORIGPUBNODE,
CHNLNAME,
GUID,
MSGNAME,
APMSGVER,
TRXTYPE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSIBLOGHDRARCH
/
CREATE UNIQUE INDEX SYSADM.PS_PSIBLOGHDRARCH ON sysadm.PSIBLOGHDRARCH (ORIGPUBNODE,
CHNLNAME,
GUID,
MSGNAME,
APMSGVER,
TRXTYPE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSPRCSCHLDINFO
/
CREATE UNIQUE INDEX SYSADM.PS_PSPRCSCHLDINFO ON sysadm.PSPRCSCHLDINFO
(PRCSINSTANCE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSPRCSPARMS
/
CREATE UNIQUE INDEX SYSADM.PS_PSPRCSPARMS ON sysadm.PSPRCSPARMS (PRCSINSTANCE)
TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000 MAXEXTENTS
UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSPRCSQUE
/
DROP INDEX SYSADM.PSAPSPRCSQUE
/
DROP INDEX SYSADM.PSBPSPRCSQUE
/
DROP INDEX SYSADM.PSCPSPRCSQUE
/
DROP INDEX SYSADM.PSDPSPRCSQUE
/
DROP INDEX SYSADM.PSEPSPRCSQUE
/
CREATE UNIQUE INDEX SYSADM.PS_PSPRCSQUE ON sysadm.PSPRCSQUE (PRCSINSTANCE)
TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000 MAXEXTENTS
UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSAPSPRCSQUE ON sysadm.PSPRCSQUE (SERVERNAMERQST,
SERVERNAMERUN,
OPSYS,
RUNSTATUS) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSBPSPRCSQUE ON sysadm.PSPRCSQUE (SERVERNAMERUN,
PRCSINSTANCE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSCPSPRCSQUE ON sysadm.PSPRCSQUE (PRCSINSTANCE,
SESSIONIDNUM,
OPRID) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSDPSPRCSQUE ON sysadm.PSPRCSQUE (MAINJOBINSTANCE) TABLESPACE
PSINDEX STORAGE (INITIAL 40000 NEXT 100000 MAXEXTENTS UNLIMITED
PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSEPSPRCSQUE ON sysadm.PSPRCSQUE (RECURORIGPRCSINST,
RECURNAME,
INITIATEDNEXT) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSPRCSRQST
/
DROP INDEX SYSADM.PSAPSPRCSRQST
/
DROP INDEX SYSADM.PSBPSPRCSRQST
/
DROP INDEX SYSADM.PSCPSPRCSRQST
/
CREATE UNIQUE INDEX SYSADM.PS_PSPRCSRQST ON sysadm.PSPRCSRQST (PRCSINSTANCE)
TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000 MAXEXTENTS
UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSAPSPRCSRQST ON sysadm.PSPRCSRQST (JOBINSTANCE) TABLESPACE
PSINDEX STORAGE (INITIAL 40000 NEXT 100000 MAXEXTENTS UNLIMITED
PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSBPSPRCSRQST ON sysadm.PSPRCSRQST (OPRID,
RQSTDTTM,
PRCSTYPE,
PRCSJOBSEQ) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
CREATE INDEX SYSADM.PSCPSPRCSRQST ON sysadm.PSPRCSRQST (MAINJOBINSTANCE)
TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000 MAXEXTENTS
UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSPRCSRQSTFILE
/
CREATE UNIQUE INDEX SYSADM.PS_PSPRCSRQSTFILE ON sysadm.PSPRCSRQSTFILE (PRCSINSTANCE,
SEQNUM) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSPRCSRQSTMETA
/
CREATE UNIQUE INDEX SYSADM.PS_PSPRCSRQSTMETA ON sysadm.PSPRCSRQSTMETA (PRCSINSTANCE,
METAPARM) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSPRCSRQSTSTRNG
/
CREATE UNIQUE INDEX SYSADM.PS_PSPRCSRQSTSTRNG ON sysadm.PSPRCSRQSTSTRNG
(PRCSINSTANCE,
RQSTSTRINGTYPE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PSAPSPRCSRQSTTEXT
/
CREATE UNIQUE INDEX SYSADM.PSAPSPRCSRQSTTEXT ON sysadm.PSPRCSRQSTTEXT (PRCSINSTANCE,
RQSTTEXTTYPE) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSPRCSRQSTTIME
/
CREATE UNIQUE INDEX SYSADM.PS_PSPRCSRQSTTIME ON sysadm.PSPRCSRQSTTIME (PRCSINSTANCE,
SEQNUM) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSPRCSRQSTXFER
/
CREATE UNIQUE INDEX SYSADM.PS_PSPRCSRQSTXFER ON sysadm.PSPRCSRQSTXFER (PRCSINSTANCE,
KEYNAME) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT 100000
MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSRF_FINFO_TBL
/
CREATE UNIQUE INDEX SYSADM.PS_PSRF_FINFO_TBL ON sysadm.PSRF_FINFO_TBL
(PSRF_FOLDER_ID) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSRF_RATTR_TBL
/
CREATE UNIQUE INDEX SYSADM.PS_PSRF_RATTR_TBL ON sysadm.PSRF_RATTR_TBL
(PSRF_REPORT_ID,
PSRF_ATTRIBUT_NAME) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSRF_RINFO_TBL
/
CREATE UNIQUE INDEX SYSADM.PS_PSRF_RINFO_TBL ON sysadm.PSRF_RINFO_TBL
(PSRF_REPORT_ID) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
DROP INDEX SYSADM.PS_PSRF_RSCRTY_TBL
/
CREATE UNIQUE INDEX SYSADM.PS_PSRF_RSCRTY_TBL ON sysadm.PSRF_RSCRTY_TBL (USERID,
PSRF_REPORT_ID) TABLESPACE PSINDEX STORAGE (INITIAL 40000 NEXT
100000 MAXEXTENTS UNLIMITED PCTINCREASE 0 ) PCTFREE 10
/
COMMIT
/
analyze index sysadm.PS_CDM_AUTH estimate statistics ;
analyze index sysadm.PSACDM_AUTH estimate statistics ;
analyze index sysadm.PS_CDM_FILE_LIST estimate statistics ;
analyze index sysadm.PS_CDM_LIST estimate statistics ;
analyze index sysadm.PSACDM_LIST estimate statistics ;
analyze index sysadm.PS_CDM_LIST_ARCH estimate statistics ;
analyze index sysadm.PS_CDM_TEXT estimate statistics ;
analyze index sysadm.PS_CDM_TRANSFER estimate statistics ;
analyze index sysadm.PS_CDM_TRNFR_RJCT estimate statistics ;
analyze index sysadm.PS_MESSAGE_LOG estimate statistics ;
analyze index sysadm.PS_MESSAGE_LOGPARM estimate statistics ;
analyze index sysadm.PS_PRCSRQSTDIST estimate statistics ;
analyze index sysadm.PS_PRCSRQSTNOTIFY estimate statistics ;
analyze index sysadm.PS_PSAPMSGARCHPC estimate statistics ;
analyze index sysadm.PS_PSAPMSGARCHPD estimate statistics ;
analyze index sysadm.PS_PSAPMSGARCHPH estimate statistics ;
analyze index sysadm.PS_PSAPMSGARCHPT estimate statistics ;
analyze index sysadm.PS_PSAPMSGARCHSC estimate statistics ;
analyze index sysadm.PS_PSAPMSGARCHST estimate statistics ;
analyze index sysadm.PS_PSAPMSGPCONDATA estimate statistics ;
analyze index sysadm.PS_PSAPMSGPUBCERR estimate statistics ;
analyze index sysadm.PS_PSAPMSGPUBCERRP estimate statistics ;
analyze index sysadm.PS_PSAPMSGPUBCON estimate statistics ;
analyze index sysadm.PSAPSAPMSGPUBCON estimate statistics ;
analyze index sysadm.PSBPSAPMSGPUBCON estimate statistics ;
analyze index sysadm.PSCPSAPMSGPUBCON estimate statistics ;
analyze index sysadm.PS_PSAPMSGPUBDATA estimate statistics ;
analyze index sysadm.PS_PSAPMSGPUBERR estimate statistics ;
analyze index sysadm.PS_PSAPMSGPUBERRP estimate statistics ;
analyze index sysadm.PS_PSAPMSGPUBHDR estimate statistics ;
analyze index sysadm.PSAPSAPMSGPUBHDR estimate statistics ;
analyze index sysadm.PSBPSAPMSGPUBHDR estimate statistics ;
analyze index sysadm.PSCPSAPMSGPUBHDR estimate statistics ;
analyze index sysadm.PS_PSAPMSGSCONDATA estimate statistics ;
analyze index sysadm.PS_PSAPMSGSUBCERR estimate statistics ;
analyze index sysadm.PS_PSAPMSGSUBCERRP estimate statistics ;
analyze index sysadm.PS_PSAPMSGSUBCON estimate statistics ;
analyze index sysadm.PSAPSAPMSGSUBCON estimate statistics ;
analyze index sysadm.PSBPSAPMSGSUBCON estimate statistics ;
analyze index sysadm.PSCPSAPMSGSUBCON estimate statistics ;
analyze index sysadm.PS_PSIBLOGDATA estimate statistics ;
analyze index sysadm.PS_PSIBLOGDATAARCH estimate statistics ;
analyze index sysadm.PS_PSIBLOGERR estimate statistics ;
analyze index sysadm.PS_PSIBLOGERRP estimate statistics ;
analyze index sysadm.PS_PSIBLOGHDR estimate statistics ;
analyze index sysadm.PS_PSIBLOGHDRARCH estimate statistics ;
analyze index sysadm.PS_PSPRCSCHLDINFO estimate statistics ;
analyze index sysadm.PS_PSPRCSPARMS estimate statistics ;
analyze index sysadm.PS_PSPRCSQUE estimate statistics ;
analyze index sysadm.PSAPSPRCSQUE estimate statistics ;
analyze index sysadm.PSBPSPRCSQUE estimate statistics ;
analyze index sysadm.PSCPSPRCSQUE estimate statistics ;
analyze index sysadm.PSDPSPRCSQUE estimate statistics ;
analyze index sysadm.PSEPSPRCSQUE estimate statistics ;
analyze index sysadm.PS_PSPRCSRQST estimate statistics ;
analyze index sysadm.PSAPSPRCSRQST estimate statistics ;
analyze index sysadm.PSBPSPRCSRQST estimate statistics ;
analyze index sysadm.PSCPSPRCSRQST estimate statistics ;
analyze index sysadm.PS_PSPRCSRQSTFILE estimate statistics ;
analyze index sysadm.PS_PSPRCSRQSTMETA estimate statistics ;
analyze index sysadm.PS_PSPRCSRQSTSTRNG estimate statistics ;
analyze index sysadm.PSAPSPRCSRQSTTEXT estimate statistics ;
analyze index sysadm.PS_PSPRCSRQSTTIME estimate statistics ;
analyze index sysadm.PS_PSPRCSRQSTXFER estimate statistics ;
analyze index sysadm.PS_PSRF_FINFO_TBL estimate statistics ;
analyze index sysadm.PS_PSRF_RATTR_TBL estimate statistics ;
analyze index sysadm.PS_PSRF_RINFO_TBL estimate statistics ;
analyze index sysadm.PS_PSRF_RSCRTY_TBL estimate statistics ;
|
III. Partie PeopleSoft
III-1. Application Server
Cette partie va server à configurer la connexion entre le serveur Web (et donc les utilisateurs ) à la base de données.
Pour la mise en œuvre, il va nous falloir créer un domaine APPSERV.
Pour la création du domaine PSAPPSRV, il faut lancer psadmin avec comme répertoire courant $PS_HOME/appserv
Et renseigner les paramètres suivants :
- Nom du domaine
- Modèle de configuration ( ici nous prendrons le Template Developper qui est à modifier par la suite à la main et à reconfigurer )
Command to execute (1 - 4 , q) : 2
Please enter name of domain to create :TEST
Configuration templates:
1 ) developer
2 ) large
3 ) medium
4 ) small
Select config template number : 1
Creating domain...
Copying application server configuration files...
Using ubx template developer.ubx...
Copying Jolt repository file ...
Copying Java Query client files...
Domain created.
Would you like to configure this domain now? (y/ n) [ y ] :
Quick- configure menu
Features Settings
= = = = = = = = = = = = = = = = = = = =
1 ) Pub/ Sub Servers : No 13 ) DBNAME :[ TEST ]
2 ) Quick Server : No 14 ) DBTYPE :[ ORACLE ]
3 ) Query Servers : No 15 ) UserId :[ QEDMO ]
4 ) Jolt : Yes 16 ) UserPswd :[ QEDMO ]
5 ) Jolt Relay : No 17 ) DomainID :[ TESTSERV ]
6 ) PC Debugger : Yes 18 ) AddToPATH :[ C:\Apps\DB\MSSQL\Binn ]
7 ) Event Notification: Yes 19 ) ConnectID :[ people ]
8 ) MCF Servers : No 20 ) ConnectPswd:[ peop1e ]
9 ) Perf Collator : No 21 ) ServerName :[ ]
10 ) Analytic Servers : No 22 ) WSL Port :[ 7000 ]
23 ) JSL Port :[ 9000 ]
24 ) JRAD Port :[ 9100 ]
Actions
= = = = = = = = =
11 ) Load config as shown
12 ) Custom configuration
h) Help for this menu
q) Return to previous menu
HINT: Enter 13 to edit DBNAME, then 11 to load
Enter selection (1 - 24 , h, or q): 11
Loading validation table ...
setting DBName= TEST
setting DBType= ORACLE
setting UserId= QEDMO
setting UserPswd= QEDMO
setting ConnectId= people
setting ConnectPswd= peop1e
setting ServerName=
setting Port= 7000
setting Port= 9000
setting Listener Port= 9100
setting Domain ID= TESTSERV
setting Add to PATH= C:\Apps\DB\MSSQL\Binn
New CFG file written with modified Startup parameters
Log Directory entry not found in configuration file .
Setting Log Directory to the default ... [ PS_SERVDIR/LOGS ]
Spawning disabled for server PSAPPSRV.
Configuration file successfully created.
CFG setting changes completed, loading configuration...
Domain configuration complete.
|
Il est possible d'automatiser cela en créant le domaine en ligne de commande :
sproerp07- psoft84: / psoftsp1/ appserv> psadmin - c create - d TEST - t developer
Creating domain...
Copying application server configuration files...
Using ubx template developer.ubx...
Copying Jolt repository file ...
Copying Java Query client files...
Domain created.
|
Ce qui à pour but de créer un répertoire dans $PS_HOME/appserv du nom du domaine, en l'occurrence TEST et d'y mettre les fichiers suivants :
sproerp07- psoft84: / psoftsp1/ appserv/ TEST> ls - ltr
total 1456
- rw- r
- rw- r
- rw- r
- rw- r
- rw- r
- rw- r
- rw- r
- rw- r
- rw- r
- rw- r
drwxr- xr- x 2 psoft84 dba 256 Feb 20 16 :06 LOGS
- rw- r
|
Le fichier principale ou s'effectue les modifications est psappsrv.cfg. Le fichier binaire issu de la reconfiguration de ce domaine est PSTUXCFG.
Ensuite après avoir créé le domaine, il va nous falloir le configurer, cette étape en mode interactive,
4) Configure this domain
Peux également être automatisé via une ligne de commande
sproerp07- psoft84: / psoftsp1/ appserv> psadmin - c configure - d TEST
Loading UBBGEN configuration utility ...
Loading validation table ...
Log Directory entry not found in configuration file .
Setting Log Directory to the default ... [ PS_SERVDIR/LOGS ]
Spawning disabled for server PSAPPSRV.
Configuration file successfully created.
Loading new configuration...
|
Si nous modifions une valeur dans le fichier de configuration, il nous faut reconfigurer le domaine. Un autre PSTUXCFG sera donc généré.
La reconfiguration se fait ainsi de la même manière que la configuration.
Le paramètre -c nous indique qu'il s'agit des Application server ( il est à -p pour les process Schedulers ) . La valeur après -d permet d'indiquer le domaine.
Pour pouvoir accès à l'aide sur psadmin il suffit de taper :
Ensuite il suffit de démarrer les application server.
Une autre méthode consiste à se connecter en mode 3 tiers, en renseignant dans le configuration manager :
- Nom du domaine : TEST
- IP ou Nom du server : 127.0.0.1
- Port du WSL (Workstation listener)
Si la connexion fonctionne, c'est que l'application server est bien configurée et démarrée.
III-2. Process Scheduler
La configuration des process schéduler se fait également grâce à PSADMIN en fournissant les informations suivantes :
- Base de données accédée.
- Informations de connexions et Templates
Tout comme les Applications servers, il y a un certain nombre de fichiers qui sont crées.
Mais dans le répertoire suivant : PS_HOME/appserv/prcs/DOMAINE
- psprcs.cfg
- psprcsrv.ubx
- psprcsrv.ubb
- psprcsrv.env
Ici également il existe un fichier binaire PSTUXCFG qui est généré lorsque de la configuration ou de la reconfiguration des process scheduler, qui s'effectue aisément en ligne de commande :
sproerp07- psoft84: / psoftsp1/ appserv> psadmin - p configure - d TEST
Unable to open validation file ! Data entry will NOT be validated!
Spawning enabled for server PSDSTSRV.
Configuration file successfully created.
CFG setting changes completed, loading configuration...
Process Scheduler Server configuration complete.
|
Attention à ne pas lancer cette configuration lorsque les PRCS sont en marche :
Sinon vous risquez d'avoir une erreur TUXEDO :
CMDTUX_CAT: 883 : ERROR: tmloadcf cannot run on an active node
= = = = = = = = = = = = = = ERROR!= = = = = = = = = = = = = = = =
Unable to load the configuration! Check the TUXEDO log for details.
= = = = = = = = = = = = = = ERROR!= = = = = = = = = = = = = = = =
|
Pensez donc à arrêter votre environnement :
sproerp07- psoft84: / psoftsp1/ appserv> psadmin - p stop - d TEST
Shutting down all admin and server processes in / psoftsp1/ appserv/ prcs/ PRGPRD/ PSTUXCFG
Shutting down server processes ...
Server Id = 1 Group Id = MONITOR Machine = sproerp07: shutdown succeeded
Server Id = 101 Group Id = BASE Machine = sproerp07: shutdown succeeded
Server Id = 103 Group Id = BASE Machine = sproerp07: shutdown succeeded
Server Id = 102 Group Id = BASE Machine = sproerp07: shutdown succeeded
Shutting down admin processes ...
Server Id = 0 Group Id = sproerp07 Machine = sproerp07: shutdown succeeded
5 processes stopped.
|
Une des grandes forces de PeopleSoft est d'avoir une base de donnée qui stocke énormément d'informations, sauf pour les SQR et les Crystal Reports.
Pensez donc à mettre à jour également le répertoire des SQR et des crystaux (uniquement sur NT).
Le plus simple étant d'ajouter ces répertoires lors de la sauvegarde Oracle afin d'être sur de les restaurer en même temps que la base.
Les sources SQR sont stockés dans le chemin PSSQR1 de la section [SQR] dans le psprcs.cfg :
[ SQR ]
;= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
; Settings for SQR Software
;= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
SQRBIN= % PS_HOME% / bin/ sqr/ % PS_DB% / bin
PSSQRFLAGS= - ZIF% PS_HOME% / sqr/ pssqr% LANGUAGECD% .unx
Print Log = N
Enhanced HTML= N
PSSQR1= % PS_HOME% / PRGPRD/ sqr
PSSQR2=
PSSQR3=
PSSQR4=
|
Quand aux crystaux, le chemin est celui définit par la variable :
CRWRPTPATH= % PS_HOME% \PREPRD\CRW\
|
Si vous utilisez des REMOTE COBOL, il faut également s'assurer de la variable : CBLBIN.
IV. WebServer
IV-1. Création automatique
Ici nous allons créer le point d'entrée de l'application. Afin d'avoir une URL ou les utilisateurs vont pouvoir se connecter.
Ici comme notre configuration inclus un serveur web IBM : Websphere.
Les répertoires vont être crées dans :
$PS_HOME/ webserv/ serveurNode_serveurNode_SERVERNAME/ peoplesoft.ear/ PORTAL/ WEB- INF/ psftdocs
|
et dans :
$PS_HOME/ webserv/ serveurNode_serveurNode_SERVERNAME/ peoplesoft.ear/ PORTAL/
|
serveur: doit être remplacé par le nom du serveur.
SERVERNAME : doit être remplacé par le nom du node que l'on a crée lors de l'installation de PeopleSoft.
Voici l'écran d'accueil :
Renseignez le $PS_HOME :
Choisir le serveur Web d'installer :
Il s'agit de la variable : $WEB_HOME/AppServer
Puis il ne reste plus qu'à se laisser guider :
- Nom du domaine
- Lieu des reports
L'interface graphique peut être assez lourde à charger et assez lente.
Une autre solution consiste à lancer cet utilitaire mais en mode console :
/ psoftsp1/ setup/ mpinternet> ./ setup.aix - console
InstallShield Wizard
Initializing InstallShield Wizard...
Searching for Java(tm) Virtual Machine...
............
Welcome to the InstallShield Wizard for PeopleSoft Internet Architecture.
Using the InstallShield Wizard you will install PeopleSoft Internet
Architecture on your computer.
Version: 8 .46 .06
Note: If installing onto a BEA WebLogic Server, make sure to shutdown any
running web servers to avoid web server corruption.
Select Next to continue or Cancel to exit .
Press 1 for Next , 3 to Cancel or 4 to Redisplay [ 1 ]
|
Puis se laisser guider en répondant aux diverses questions.
Un arrêt et redémarrage du webserver est obligatoire :
cd $WEB_HOME/ AppServer/ bin
./ stopServer.sh SERVERNAME
./ startServer.sh SERVERNAME
|
IV-2. Création Manuelle
Lorsque l'on est assez à l'aise avec les webserver on peut envisager une création à "la main" des domaines WEBSERV.
Il suffit de copier un répertoire existant dans les répertoires suivants :
$PS_HOME/ webserv/ serveurNode_serveurNode_SERVERNAME/ peoplesoft.ear/ PORTAL/
|
Puis de modifier les fichiers signon.html :
La ligne suivante :
< meta HTTP- EQUIV= ' Refresh ' CONTENT= ' 1;
URL=../psp/NOM_DOMAINE/?cmd=login ' >
|
et dans :
$PS_HOME/ webserv/ serveurNode_serveurNode_SERVERNAME/ peoplesoft.ear/ PORTAL/ WEB- INF/ psftdocs
|
Configuration.properties :
Ici on fait référence à l'host et au port du JSL. Il s'agit de faire la connexion entre le webserver et le serveur d'application.
Puis un arrêt - redémarrage du serveur Web est nécessaire.
Exemple de création :
$> cd $PS_HOME/ webserv/ serveurNode_serveurNode_SERVERNAME/ peoplesoft.ear/ PORTAL/
$> cp - r PROD PRGPRD
$> cd PRGPRD
$> vi signon.html
Et Modifier la ligne
< meta HTTP- EQUIV= ' Refresh ' CONTENT= ' 1; URL=../psp/PRGPRD/?cmd=login ' >
$> cd $PS_HOME/ webserv/ serveurNode_serveurNode_SERVERNAME/ peoplesoft.ear/ PORTAL/ WEB- INF/ psftdocs
$> cp - r PROD PRGPRD
$> cd PRGPRD
$> vi configuration.properties
Et Modifier la ligne
psserver= serveur:port
|
Ce document est issu de http://www.developpez.com et reste la propriété exclusive de son auteur.
La copie, modification et/ou distribution par quelque moyen que ce soit est soumise à l'obtention préalable de l'autorisation de l'auteur.