The User Application uses a database for various tasks such as storing configuration data and storing data for any workflow activities. Before you can install the Roles Based Provisioning Module or User Application, you must have one of the supported databases for your platform installed and configured. This includes:
Installing your database and database driver.
Creating a database or a database instance.
Recording the following database parameters for use in the installation procedure for the Identity Manager Roles Based Provisioning Module:
host and port
database name, username, and user password
Creating a datasource file that points to the database.
The method varies according to your application server. For JBoss, the Identity Manager Roles Based Provisioning Module install program creates an application server datasource file pointing to the database and names the file based on the name of the Identity Manager Roles Based Provisioning Module WAR file. For WebSphere and WebLogic, configure the datasource manually prior to the install.
Databases must be enabled for UTF-8.
NOTE:If you are migrating to a new version of the Roles Based Provisoining Module, you must use the same User Application database that you used for the previous installation (that is, the installation from which you are migrating.)
The User Application requires certain configuration options for MySQL.If you install MySQL yourself, you configure these settings. If you install MySQL by using the JBossMySQL utility, the utility sets the correct values for you, but you need to know the values to maintain for the following:
The User Application uses the INNODB storage engine, which enables you to choose INNODB table types for MySQL. If you create a MySQL table without specifying its table type, the table receives the MyISAM table type by default. If you choose to install MySQL from the Identity Manager installation procedure, the MySQL issued with that procedure comes with the INNODB table type specified. To ensure that your MySQL server is using INNODB, verify that my.cnf (Linux or Solaris) or my.ini (Windows) contains the following option:
default-table-type=innodb
It should not contain the skip-innodb option.
Specify UTF-8 as the character set for the whole server or just for a database. Specify UTF-8 on a server-wide basis by including the following option in my.cnf (Linux or Solaris) or my.ini (Windows):
character_set_server=utf8
You can also specify the character set for a database at database creation time, using the following command:
create database databasename character set utf8 collate utf8_bin;
If you set the character set for the database, you must also specify the character set in the JDBC* URL in the IDM-ds.xml file, as in the following example:
<connection-url>jdbc:mysql://localhost:3306/databasename?useUnicode=true&characterEncoding=utf8&connectionCollation=utf8_bin</connection-url>
Ensure that case sensitivity is consistent across servers or platforms if you plan to back up and restore data across servers or platforms. To ensure consistency, specify the same value (either 0 or 1) for lower_case_table_names in all your my.cnf (Linux or Solaris) or my.ini (Windows) files, instead of accepting the default (Windows defaults to 0 and Linux defaults to 1.) Specify this value before you create the database to hold the Identity Manager tables. For example, you would specify
lower_case_table_names=1
in the my.cnf and my.ini files for all platforms on which you plan to back up and restore a database.