Skip to main content

iCATs

Install and configure iCATs

Install from scratch

Create a new icats base directory

sudo -s    # root
mkdir /opt/icats
chown oracle:oinstall /opt/icats

Create a new environment directory pdbicatstst

su - oracle    # oracle
mkdir /opt/icats/pdbicatstst

Unzip iCATs package

cd /opt/icats/pdbicatstst
unzip /usr/local/src/iCATs-xxxxxx.zip

Install iCATs

cd /opt/icats/pdbicatstst/install
sq
SQL> alter session set container=PDBICATSTST;
SQL> @cat_initial.sql

...Checking SYSDBA Privilege

...Checking if Oracle User 'ICATS' exists already
...Create tablespace ICATS size 500MB
...Create schema ICATS
...Set current schema to APEX_240200
...Add ICATS workspace
...Executing cat_grants.sql
...Grant default APEX permission to schema ICATS
...Grant iCATs permission to schema ICATS
...Create configurationfile ../bin/iCATs.xml

Change password for Oracle user icats

sq
SQL> alter session set container=PDBICATSTST;
SQL> alter user icats identified by "pwd";
SQL> exit

Logon on the database as user icats

Exectue cat_install.sql from the install folder of the iCATs environment -> pdbicatstst.

cd /opt/icats/pdbicatstst/install

sqlplus icats@PDBICATSTST
Enter password: ******

SQL> !pwd
/opt/icats/pdbicatstst/install

SQL> @cat_install.sql /opt/icats/pdbicatstst

Configure iCATs.xml

Configure the iCATs configuration file.

cd /opt/icats/pdbicatstst/bin

# Execute java -jar iCATs.jar -cryptpassword and
# enter your iCATs database password to set the encrypted password
/opt/oracle/product/21c/dbhomeXE/jdk/jre/bin/java -jar iCATs.jar -cryptpassword
Enter the password of your 'CAT' database account:

Your <cryptpassword> is: 94A481999972B3F6FABCDB4B40123472

vim /opt/icats/pdbicatstst/bin/iCATs.xml

<?xml version="1.0"?>
<cat>
<connection>
<user>icats</user>
<password></password>
<cryptpassword></cryptpassword>
<host></host>
</connection>
</cat>

Enable and Configure Enable REST web services

sqlplus icats@PDBICATSTST

SQL> execute ords.enable_schema; -- Using default values of this procedure

begin
ords.enable_object (
p_enabled => true,
p_schema => 'ICATS',
p_object => 'CAT_API_PKG',
p_object_type => 'PACKAGE',
p_object_alias => 'api',
p_auto_rest_auth => false
);
commit;
end;
/