2.5 数据库

安装数据库和数据库驱动程序,并创建数据库或数据库实例。记录以下数据库参数,以用于 Identity Manager 基于角色的供应模块的安装过程中:

数据源文件必须指向数据库。方法因应用程序服务器而异。对于 JBoss,Identity Manager 基于角色的供应模块安装程序创建指向数据库的应用程序服务器数据源文件,并根据 Identity Manager 基于角色的供应模块 WAR 文件名称命名文件。对于 WebSphere,请在安装前手动配置数据源。

数据库必须启用了 UTF-8。

2.5.1 安装 MySQL

无论您是通过 IDM User Application 实用程序安装 MySQL* 还是在自己的计算机上安装 MySQL,都请阅读部分 2.5.2, 配置 MySQL 数据库

注:如果计划迁移数据库,在安装程序中选择迁移选项之前,请启动该数据库。如果不迁移数据库,则安装 Identity Manager 基于角色的供应模块过程中无需运行数据库。只需启动数据库后再启动应用程序服务器即可。

2.5.2 配置 MySQL 数据库

必须设置 MySQL 配置,以使 MySQL 和 Identity manager 3.5.1 能够配合工作。如果自己安装 MySQL,必须自行设置。如果通过 JbossMysql 实用程序安装 MySQL,则实用程序将为您设置正确的值,但需要知道为以下项目保留的值:

INNODB 存储引擎和表类型

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 选项。

字符集

将整个服务器或仅仅某个数据库的字符集指定为 UTF8。要在整个服务器范围内指定 UTF8,可在 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&amp;characterEncoding

区分大小写

如果计划跨服务器或平台备份或恢复数据,请确保所有服务器或平台上的大小写保持一致。要确保该一致性,请为所有 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.cnfmy.ini 文件中)。