Le clonage d'environnement PeopleSoftDate 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
V. Conclusion
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.3
Base de données : Mono Instance Oracle standart 10.2.0.2
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
|
| |