Accueil
Rechercher:
sur developpez.com sur les forums
Forums | Tutoriels | F.A.Q's | Participez | Hébergement | Contacts
Club Emploi Blogs   TV   Dév. Web PHP XML Python Autres 2D-3D-Jeux Sécurité Windows Linux PC Mac
Accueil Conception Java DotNET Visual Basic  C  C++ Delphi MS-Office SQL & SGBD Oracle  4D  Business Intelligence
FORUM ORACLE F.A.Q ORACLE TUTORIELS ORACLE TUTORIELS SQL SCRIPTS SQL LIVRES ORACLE QUIZ

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
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 :

- fr 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 :

- fr 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 :

--  Partie PeopleSoft
/*************************************************************************
Nettoyage des tables
*************************************************************************/
-- La liste des tables est fournie par PeopleSoft dans 3 DMS standards prcsclr.dms rptclr.dms et appmsgpurgeall.dms
-- Des tables additionnelles sont nettoyees. La liste provient du document fourni par PeopleSoft : Cloning_a_PS_Database.
-- Par soucis de performance, ON sysadm.a remplace le DELETE FROM par TRUNCATE TABLE.

-- Truncate des tables
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;

-- Lacement des statistiques sur les tables
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 ;

-- Build des index (généré a partir d Application Designer)
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