# Database Deployment

Prior to successfully starting the application itself, an initial database schema has to be created. Besides the application war file (RegistryCxn.war) a zip package (e.g. RegistryCxn.zip) is provided that contains a script responsible for creating the DB.

1. Extract the zip file into a selected folder.

2. Make sure that the location of the registry.properties file containing the DB connectivity information is referred by the environment variable REGISTRYCXN_HOME.

3. Start ./RegistryCxn bash script or RegistryCxn.bat in the RegistryCxn/bin folder of the extracted content (depending on the OS type). The following are available:

 -disableGlobalProjectAccess   together with sqldeploy, disables global
project access rights
-dropSchema                   drops all database objects from
registration schema
-dropSchemaDS                 drops all database objects from downstream
schema
-help                         print this help summary
-migrateSchema                create or upgrade database objects in
registration schema
downstream schema
-schemaInfo                   prints informations about the registration
schema
-schemaInfoDS                 prints informations about the downstream
schema

In order to create an initial DB schema or clean an existing one completely, please use the following command line:

./RegistryCxn -migrateSchema
./RegistryCxn -dropSchema -migrateSchema

Since version 16.09.05-917:

./RegistryCxn install -migrateSchema
./RegistryCxn install -dropSchema -migrateSchema

# Clearing the Database

It is possible to clear all the structures from the database while keeping the configuration, users, groups and projects in the system. After running a script, the structure-related database tables will be cleared and the sequences will be reset. This method is designed for testing purposes, it is not recommended execute it on a production database.

In order to use this functionality, please use the database deployment script with the following argument:

./RegistryCxn clear-data

# Creating a group

To create a group with the Command Line Tool, you have to use the "create-group" command where you have to enter the name, roles and optionally the source of the group (by default it's DB). The syntax is:

./RegistryCxn create-group -group <group_name> -source <source_name> -role <role_names>

(Before version 19.13.0-1907171250 the -source attribute could not be used.)
Source can be either DB, AD, LDAP, SAMLSSO, OAUTH2.
Role names can be found here:https://docs.chemaxon.com/display/docs/Groups+and+roles
(From version 19.13.0-1907171250 you can add multiple roles by entering a list of role names separated by spaces.)

# Updating a group

From version 19.13.0-1907171250 it is possible to update the roles defined by a group using the Command Line Tool. To do this, you have to use the "update-group" command where you have to enter the name, roles and optionally the source of the group (by default it's DB). The syntax is:

./RegistryCxn update-group -group <group_name> -source <source_name> -role <role_names>

The arguments have the same meaning as in the "create-group" command.

# Create a user

To create a user with the Command Line Tool, you can use the "create-user" where you have to enter the name, password, and group.