mirror of https://github.com/kianby/blog
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
121 lines
5.7 KiB
Markdown
121 lines
5.7 KiB
Markdown
5 years ago
|
<!-- title: Installer Oracle Express sur Centos -->
|
||
|
<!-- category: GNU/Linux -->
|
||
|
<!-- tag: planet -->
|
||
5 years ago
|
|
||
|
Oracle est la base de données phare de l'éditeur du même nom, utilisée pour des
|
||
|
grosses applications et des gros volumes de données.<!-- more --> Toute une suite de
|
||
|
produits de l'éditeur existe autour de la base pour administrer, optimiser,
|
||
|
déployer... Oracle fournit aussi une version limitée de son produit pour les
|
||
|
développeurs, il s'agit de **Oracle Express**. C'est une base qu'on va utiliser
|
||
|
pour développer et distribuer de modestes applications ou pour mettre au point
|
||
|
du code déployé sur des *vraies bases* Oracle en production. Les limitations
|
||
|
sont les suivantes : un seul processeur exploité, 1 Go de RAM max utilisé et
|
||
|
stockage de 11 Go de données maximum.
|
||
|
|
||
|
Oracle Express est proposée pour Ms Windows et **GNU/Linux en 64 bits** en
|
||
|
paquet RPM. J'ai décrit ci-après l'installation type sur un serveur Centos. La
|
||
|
procédure n'est pas complexe mais il y a quelques écueils qui justifient cet
|
||
|
article.
|
||
|
|
||
|
J'ai effectué l'installation de base d'un Centos 6.6 en 64 bits. Un pré-requis
|
||
|
à respecter, sinon Oracle refuse de s'installer, est la création d'une partition
|
||
|
de swap au moins égale à 2x la quantité de RAM de la machine.
|
||
|
|
||
|
On télécharge Oracle Express depuis [le site
|
||
|
officiel](http://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html).
|
||
|
On récupère un fichier ZIP qui contient le paquet RPM. On installe *unzip* sur
|
||
|
Centos et le paquet *bc* nécessaire à l'installeur Oracle.
|
||
|
|
||
|
$ yum install unzip bc
|
||
|
|
||
|
Oracle a besoin que le nom du serveur (aka hostname) soit associé à une adresse
|
||
|
IP. La solution simple est d'éditer le fichier */etc/hosts* du serveur et
|
||
|
ajouter une entrée avec le nom du serveur et son adresse IP. Désormais, nous
|
||
|
sommes prêt à démarrer l'installation. On dézippe l'archive et on installe
|
||
|
paquet *rpm* :
|
||
|
|
||
|
$ unzip oracle-xe-11.2.0-1.0.x86_64.rpm
|
||
|
$ rpm -ivh oracle-xe-11.2.0-1.0.x86_64.rpm
|
||
|
|
||
|
Quand le paquet *oracle-xe* est installé, il reste à configurer la base avec la
|
||
|
commande *configure* du service *oracle-xe* :
|
||
|
|
||
|
$ /etc/init.d/oracle-xe configure
|
||
|
|
||
|
Oracle Database 11g Express Edition Configuration
|
||
|
-------------------------------------------------
|
||
|
This will configure on-boot properties of Oracle Database 11g Express
|
||
|
Edition. The following questions will determine whether the database should
|
||
|
be starting upon system boot, the ports it will use, and the passwords that
|
||
|
will be used for database accounts. Press <enter> to accept the defaults.
|
||
|
Ctrl-C will abort.
|
||
|
|
||
|
Specify the HTTP port that will be used for Oracle Application Express [8080]:
|
||
|
|
||
|
Specify a port that will be used for the database listener [1521]:
|
||
|
|
||
|
Specify a password to be used for database accounts. Note that the same
|
||
|
password will be used for SYS and SYSTEM. Oracle recommends the use of
|
||
|
different passwords for each database account. This can be done after
|
||
|
initial configuration:
|
||
|
Confirm the password:
|
||
|
|
||
|
Do you want Oracle Database 11g Express Edition to be started on boot (y/n) [y]:y
|
||
|
|
||
|
Starting Oracle Net Listener...Done
|
||
|
Configuring database...Done
|
||
|
Starting Oracle Database 11g Express Edition instance...Done
|
||
|
Installation completed successfully.</enter>
|
||
|
|
||
|
En laissant les choix par défaut, on confime le port HTTP, le port du Listener,
|
||
|
on choisit un mot de passe pour les comptes SYS et SYSTEM et on confirme le
|
||
|
démarrage de la base au boot du serveur.
|
||
|
|
||
|
A ce stade, la base est démarrée et accessible localement. Le pare-feu de
|
||
|
Centos est installé par défaut donc il faut ajouter des règles pour ouvrir l'accès
|
||
|
distant ou plus brutalement désactiver le pare-feu avec la commande :
|
||
|
|
||
|
$ lokkit --disabled
|
||
|
|
||
|
L'accès local par SQLPlus nécessite de modifier l'environnement du Shell. On
|
||
|
peut s'éviter de le faire à chaque coup en rajoutant ce qui suit à la fin du
|
||
|
fichier */etc/profile* :
|
||
|
|
||
|
export ORACLE_SID=XE
|
||
|
export ORACLE_BASE=/u01/app/oracle
|
||
|
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/xe
|
||
|
export ORACLE_TERM=xterm
|
||
|
export NLS_LANG=FRENCH_FRANCE.utf8
|
||
|
export TNS_ADMIN=$ORACLE_HOME/network/admin
|
||
|
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
|
||
|
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
|
||
|
export PATH=$ORACLE_HOME/bin:$PATH
|
||
|
|
||
|
Finalement, on peut créer un utilisateur *normal* que l'on
|
||
|
utilisera dans notre développement depuis SQLPlus :
|
||
|
|
||
|
SQL> connect
|
||
|
SQL> create user joelafrite idenfied by <password-for-joe>;
|
||
|
SQL> grant CREATE SESSION, ALTER SESSION, CREATE DATABASE LINK, -
|
||
|
CREATE MATERIALIZED VIEW, CREATE PROCEDURE, CREATE PUBLIC SYNONYM, -
|
||
|
CREATE ROLE, CREATE SEQUENCE, CREATE SYNONYM, CREATE TABLE, -
|
||
|
CREATE TRIGGER, CREATE TYPE, CREATE VIEW, UNLIMITED TABLESPACE -
|
||
|
to joelafrite;
|
||
|
|
||
|
L'interface Web appelée "Application Express" permet d'effectuer les tâches
|
||
|
courantes d'administration. Je ne peux pas en dire grand chose, je ne l'ai pas
|
||
|
utilisé. Je me cantonne à SQLPlus et JDBC. Mais cette interface est accessible
|
||
|
depuis un navigateur à l'adresse
|
||
|
[http://localhost:8080/apex](http://localhost:8080/apex) avec les informations
|
||
|
de connexion suivantes :
|
||
|
|
||
|
- Workspace: *ce que vous voulez*
|
||
|
- Username: ADMIN
|
||
|
- Pasword: *celui de l'utilisateur SYS et SYSTEM*
|
||
|
|
||
|
Les références pour écrire cet article :
|
||
|
|
||
|
- [http://www.davidghedini.com/pg/entry/install_oracle_11g_xe_on](http://www.davidghedini.com/pg/entry/install_oracle_11g_xe_on)
|
||
|
- [https://stackoverflow.com/questions/18028942/oracle-xe-database-configuration-failed](https://stackoverflow.com/questions/18028942/oracle-xe-database-configuration-failed)
|
||
|
- [http://blog.warp11.nl/2011/05/fully-freeware-apex-environment-i-centos-oracle-xe-11g](http://blog.warp11.nl/2011/05/fully-freeware-apex-environment-i-centos-oracle-xe-11g)
|