User Application 使用数据库来完成各项任务,如储存配置数据和任何工作流程活动的数据。安装基于角色的供应模块或 User Application 前,必须安装并配置了在您的平台上受支持的数据库之一。其中包括:
安装数据库和数据库驱动程序。
创建数据库或数据库实例。
记录以下数据库参数,以在 Identity Manager 基于角色的供应模块的安装过程中使用:
主机和端口
数据库名称、用户名和用户口令
创建指向该数据库的数据源文件。
方法因应用程序服务器而异。对于 JBoss,Identity Manager 基于角色的供应模块安装程序创建指向数据库的应用程序服务器数据源文件,并根据 Identity Manager 基于角色的供应模块 WAR 文件名称命名文件。对于 WebSphere 和 WebLogic,请在安装前手动配置数据源。
数据库必须支持 UTF-8。
注:如果正要迁移到基于角色的供应模块的新版本,则必须使用之前安装(即要迁移的安装版本)所用的同一 User Application 数据库。
User Application 需要 MySQL 的某些配置选项。如果您自己安装 MySQL,请配置以下设置。如果通过使用 JbossMysql 实用程序安装 MySQL,则实用程序将为您设置正确的值,但需要知道为以下项目保留的值:
User Application 使用了 INNODB 储存引擎,通过它可以选择为 MySQL 指定 INNODB 表类型。如果创建 MySQL 表时没有指定表类型,默认情况下,该表采用 MyISAM 表类型。如果选择在 Identity Manager 安装过程中安装 MySQL,则在此过程中安装的 MySQL 采用指定的 INNODB 表类型。为确保 MySQL 服务器使用 INNODB,请校验 my.cnf(Linux 或 Solaris)或 my.ini (Windows) 中包含以下选项:
default-table-type=innodb
它不应包含 skip-innodb 选项。
将整个服务器或仅仅某个数据库的字符集指定为 UTF-8。要在整个服务器范围内指定 UTF-8,可在 my.cnf(Linux 或 Solaris)或者 my.ini (Windows) 中包含以下选项:
character_set_server=utf8
也可以在创建数据库时使用以下命令指定数据库字符集:
create database databasename character set utf8 collate utf8_bin;
如果为数据库设置了字符集,还必须在 IDM-ds.xml 文件的 JDBC* URL 中指定该字符集,如以下示例所示:
<connection-url>jdbc:mysql://localhost:3306/databasename?useUnicode=true&characterEncoding=utf8&connectionCollation=utf8_bin</connection-url>
如果计划跨服务器或平台备份或恢复数据,请确保所有服务器或平台上的大小写保持一致。要确保该一致性,请为所有 my.cnf(Linux 或 Solaris)或 my.ini (Windows) 文件中的 lower_case_table_names 指定相同的值(0 或 1),而不是接受默认值(Windows 默认为 0,而 Linux 默认为 1。) 请在创建数据库保存 Identity Manager 表之前指定该值。例如,对于所有计划备份和恢复数据库的平台,可以指定
lower_case_table_names=1
(在 my.cnf 和 my.ini 文件中)。