2.5 Bases de données

Installez votre base de données et votre pilote de base de données, puis créez une base de données ou une instance de base de données. Notez les paramètres suivants de la base de données car ils serviront lors de l'installation du module Provisioning d'Identity Manager basé sur les rôles :

Un fichier de source de données doit pointer vers la base de données. La méthode diffère selon le serveur d'applications. Dans le cas de JBoss, le programme d'installation du module de provisioning basé sur les rôles d'Identity Manager crée un fichier source de données du serveur d'applications qui pointe vers la base de données et nomme le fichier en fonction du fichier WAR du module de provisioning basé sur les rôles d'Identity Manager. Pour WebSphere, configurez la source de données manuellement avant l'installation.

Les bases de données doivent être compatibles UTF-8.

2.5.1 Installation de MySQL

Que vous installiez MySQL* par l'utilitaire de l'application utilisateur IDM ou par vous-même, lisez Section 2.5.2, Configuration de votre base de données MySQL.

REMARQUE :si vous prévoyez de migrer une base de données, démarrez cette base de données avant de sélectionner l'option de migration dans le programme d'installation. Si vous ne migrez pas de base de données, vous n'avez pas à l'exécuter pendant l'installation du module de provisioning basé sur les rôles d'Identity Manager. Ne la démarrez que juste avant de démarrer le serveur d'applications.

2.5.2 Configuration de votre base de données MySQL

Vos paramètres de configuration MySQL doivent être définis de façon à ce que MySQL et Identity Manager 3.5.1 fonctionnent ensemble. Si vous installez MySQL vous-même, vous devez définir les paramètres vous-même. Si vous installez MySQL à l'aide de l'utilitaire JbossMysql, celui-ci définit les valeurs qui vous conviennent, mais vous devez connaître les valeurs à maintenir pour ce qui suit :

Moteur de stockage et types de tables INNODB

L'application utilisateur se sert du moteur de stockage INNODB, ce qui permet de choisir des types de tables INNODB pour MySQL. Si vous créez une table MySQL sans indiquer son type, la table sera de type MyISAM par défaut. Si vous choisissez d'installer MySQL à partir de la procédure d'installation d'Identity Manager, le MySQL fourni avec cette procédure contient le type de table INNODB indiqué. Pour vous assurer que votre serveur MySQL utilise INNODB, vérifiez que my.cnf (Linux ou Solaris) ou my.ini (Windows) contient l'option suivante :

default-table-type=innodb

Il ne doit pas contenir l'option skip-innodb.

Ensemble de caractères

Indiquez UTF8 comme ensemble de caractères pour l'ensemble du serveur ou simplement pour une base de données. Indiquez UTF8 sur l'ensemble du serveur en incluant l'option suivante dans my.cnf (Linux ou Solaris) ou my.ini (Windows) :

character-set-server=utf8

Pour indiquer le jeu de caractères d'une base de données au moment de la création de la base de données, utilisez la commande suivante :

create database databasename character set utf8 collate utf8_bin;

Si vous configurez le jeu de caractères pour la base de données, vous devez également indiquer le jeu de caractères de l'URL JDBC dans le fichier IDM-ds.xml, comme dans :

<connection-url>jdbc:mysql://localhost:3306/databasename?useUnicode=true&amp;characterEncoding

Distinction de la casse

Assurez-vous que la distinction de la casse est cohérente sur les serveurs et plates-formes si vous prévoyez sauvegarder et restaurer des données sur des serveurs ou des plates-formes. Pour assurer cette cohérence, indiquez la même valeur (0 ou 1) pour les noms_tables_minuscules de tous vos fichiers my.cnf (Linux ou Solaris) ou my.ini (Windows), au lieu d'accepter la valeur par défaut (valeurs par défaut Windows à 0 et valeurs par défaut Linux à 1.) Indiquez cette valeur avant de créer la base de données qui contiendra les tables Identity Manager. Vous pouvez par exemple spécifier

lower_case_table_names=1

dans les fichiers my.cnf et my.ini pour toutes les plates-formes sur lesquelles vous souhaitez sauvegarder et restaurer une base de données.