Skip to main contentMerative SPM on Kubernetes

Creating the SPM database

The following database configuration is an example for Merative Social Program Management (SPM) development environments. Consult your database administrator for optimum performance and security settings.

Database encryption

You can implement either Db2 or Oracle as your database, however you must encrypt your Database. For more information on encrypting Db2 databases, see Db2 native encryption. For more information on encrypting Oracle databases, see Part I Using Transparent Data Encryption.

Db2

If necessary, create a database by using the Db2 user to run the following commands:

cd $SERVER_DIR
./build.sh -f $CURAMSDEJ/util/db2_createdb.xml
./build.sh -f $CURAMSDEJ/util/db2_postconfig.xml -Ddb2.dir=$DB2_HOME
./build.sh -f $CURAMSDEJ/util/db2_createdb.xml restart.db2

If you are installing a new Db2 database, ensure that your log configuration is correctly configured. For example, to specify circular logging for a database named CURAM, run the following command:

db2 update db cfg for CURAM using logfilsiz 1024 logprimary 50 logsecond 30

If you do not run the update command, the default Db2 configuration causes the database build to fail.

Oracle Database

If necessary, create a database by using the Oracle user to run the following commands:

cd $ORACLE_HOME
export ORA_GLOBAL_NAME=orcl
export ORA_SID=orcl
export ORA_ADMIN_PASS=Passw0rd1
./bin/dbca -silent -createdatabase \
-templatename General_Purpose.dbc \
-gdbname $ORA_GLOBAL_NAME \
-sid $ORA_SID \
-syspassword $ORA_ADMIN_PASS \

The application needs certain privileges to use the Oracle XA interface. Later, when you configure the application, the user name under which the server connects to Oracle is specified. You must assign appropriate privileges to this user name for the server to work successfully.

The following commands create a role that is called CURAM_SERVER and give it the necessary privileges. A user named CURAM_USER is then assigned that role and given the password PASSWORD. You must run the commands from a SQLPlus terminal, which can be opened with sqlplus ?/? as SYSDBA.

CREATE ROLE "CURAM_SERVER";
GRANT RESOURCE TO "CURAM_SERVER";
@$ORACLE_HOME/rdbms/admin/xaview.sql
GRANT SELECT ON V$XATRANS$ TO PUBLIC;
GRANT SELECT ON PENDING_TRANS$ TO PUBLIC;
GRANT SELECT ON DBA_2PC_PENDING TO PUBLIC;
GRANT SELECT ON DBA_PENDING_TRANSACTIONS TO PUBLIC;
GRANT EXECUTE ON DBMS_SYSTEM TO CURAM_SERVER;
CREATE USER CURAM_USER IDENTIFIED BY PASSWORD DEFAULT TABLESPACE "USERS" TEMPORARY TABLESPACE "TEMP";