Pour des raisons de performance, LXR range les références dans une base de données.
Actuellement, LXR coopère avec Postgresql, MySQL ou Oracle, à votre choix.
Création
La création de la base de données ne peut être faite que par un utilisateur de la base
qui a la permission de créer une base.
Contactez votre administrateur local si vous ne pouvez pas ou ne savez pas comment faire.
- Postgresql
Créez un utilisateur pour LXR
et donnez-lui la permission de créer des bases:
$ createuser lxr
Créez la base de données LXR:
$ createdb -U lxr lxr
- MySQL
Lancez MySQL en tant qu'administrateur
(souvent root
) pour créer l'utilisateur lxr
avec le droit de créer des bases de données:
$ mysql -u root -p
Enter password: xxxx
mysql> create user 'lxr'@'localhost' identified by 'lxrpassword';
mysql> exit
Il est plus confortable, plus sûr et nécessitant moins d'expertise
de passer par phpMyAdmin s'il est installé.
- Oracle
Il n'y a pas d'étape de création d'utilisateur.
Configuration
L'initialisation des tables de la base de données est accomplie avec
le script interactif initdb-config.sh.
Les réponses par défaut sont montrées en majuscule.
Si cela correspond à votre besoin, appuyez simplement sur "retour chariot".
Sinon, tapez votre choix.
CAVEAT!
Si vous recommencez cette étape,
effacez d'abord tout script d'initialisation dans lxrconf.d/
(commande valable pour le cas par défaut):
$ rm lxrconf.d/*.sql
$ ./scripts/initdb-config.sh
*** initdb script configurator for LXR ($Revision: 1.3 $) ***
In case you make a mistake, you can cancel the
whole process by typing ctl-C.
Which is your database engine? [MYSQL/oracle/postgres] >
Which is your database name? [lxr] >
Which table prefix will you use? [lxr_] >
Under which user name will you connect to the database? [lxr] >
Output script name? [lxrconf.d/initdb-mysql-custom.sql] >
Your database engine is mysql
Your database is lxr
The tables are prefixed with lxr_
You connect as lxr
Configuration script in lxrconf.d/initdb-mysql-custom.sql
Is this correct? [YES|no] >
Notes:
Si vous répondez yes
,
un script d'initialisation des tables de la base est écrit dans lxrconf.d/.
Init script saved in lxrconf.d/initdb-mysql-custom.sql
Exploitation multi-arbres
Lancez ce script pour chaque arbre à faire gérer par LXR
sans changer le moteur de base de données;
chaque sortie partielle est concaténée à la fin du script d'initialisation.
Initialisation
Le script personnalisé est ensuite soumis au moteur de base de données:
- Postgresql
$ psql -U lxr lxr
> \i lxrconf.d/initdb-postgres-custom.sql
Ignorez les erreurs concernant les fonctions non implémentées.
- MySQL
$ mysql -u root -p < lxrconf.d/initdb-mysql-custom.sql
Enter password: xxxx
- Oracle
$ sqlplus
SQL> @lxrconf.d/initdb-oracle-custom.sql;