2.5 資料庫

安裝資料庫和資料庫驅動程式,並建立資料庫或資料庫例項。記下以下資料庫參數,以在「Identity Manager 角色提供模組」的安裝程序中使用:

資料來源檔案必須指向資料庫。安裝方法因應用程式伺服器而異。對於 JBoss,「Identity Manager 角色提供模組」安裝程式會建立指向資料庫的應用程式伺服器資料來源檔案,並依據「Identity Manager 角色提供模組」WAR 檔案的名稱命名該檔案。對於 WebSphere,先手動設定資料來源,再進行安裝。

必須為 UTF-8 啟用資料庫。

2.5.1 安裝 MySQL

不論您是透過「IDM 使用者應用程式」公用程式還是靠自己來安裝 MySQL*,均可參閱節 2.5.2, 設定您的 MySQL 資料庫

附註:如果您計畫移轉某個資料庫,請先啟動該資料庫,然後才在安裝程式中選取移轉選項。如果您不想移轉資料庫,就無須在安裝「Identity Manager 角色提供模組」期間執行資料庫。只要在啟動應用程式伺服器之前啟動資料庫即可。

2.5.2 設定您的 MySQL 資料庫

您必須設定 MySQL 組態設定,使 MySQL 和 Identity Manager 3.5.1 搭配運作。如果您自行安裝 MySQL,就必須自行為其進行設定。如果您使用 JbossMysql 公用程式來安裝 MySQL,則公用程式會為您設定正確的值,但您必須知道那些值是什麼,才能維護下列項目:

INNODB 存放引擎和表格類型

「使用者應用程式」使用了 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 做為整個伺服器或只有資料庫的字元集。將下列選項納入 my.cnf (Linux 或 Solaris) 或 my.ini (Windows),以涵蓋整個伺服器的基礎來指定 UTF8:

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

區分大小寫

如果您打算備份和還原伺服器或平台之間的資料,則請確定各伺服器和各平台之間都一致地區分大小寫。若要確保一致性,請在您所有的 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 檔案中)。