Creating the Production Database in the Application

The Cúram Runtime chapter of the Cúram Installation Guide for your platform type describes how to create a basic database for your installation of the application.

However, in a production environment, it is likely that you will need to have far greater involvement in creating a database in the application that is in line with your established database administration practices. Below are suggested steps to create a database suitable for use with a production installation of the application:

  1. At a command prompt, change directory to the root of the runtime installation directory.
  2. Run the following command:

    build database

  3. Review the contents of the build/datamanager subdirectory within your installation directory. This directory contains a number of generated scripts which define the structure and initial data of your database.
  4. Refine or refactor the DDL/SQL commands in line with your requirements, e.g., you may wish to:
    • Specify the creation of your physical database, e.g., implement a partitioning strategy
    • Share the physical database with other applications you may have
    • Specify the physical attributes of tables in the application, e.g., expected growth rate
    • Customize the initial data required by the application, e.g., change the function privileges for your security roles
    • Omit foreign key constraints as they are not supported in a production environment1
    • Load data from your existing system(s) (NB see Data Conversion Issues below)
    • Refine the indexing strategy, e.g., implement hashed indexes
  5. Use your refined/refactored script(s) (in addition to any established administrative procedures you may have) to create your production database in the application.
1 The Cúram Reference Application enforces referential integrity (RI) in the application and as such using database-enforced RI will degrade performance. It is strongly recommended that in a production environment you do not create foreign key constraints on your database.