Le blog d'Oracle en espagnol

Installation Oracle Apex sous Linux

Guide simple pour installer Oracle et ORDS sur des systèmes Linux en format autonome.

Versions à installer dans ce guide :
APEX 24.1
Java23
ORDS 24.4

Les téléchargements sont disponibles sur les liens suivants :

Télécharger les logiciels requis

1) Téléchargez la dernière version d'Oracle APEX, en l'occurrence la version 24.1.
https://www.oracle.com/tools/downloads/apex-241-downloads/
Téléchargez le fichier : Oracle APEX 24.1 – Toutes les langues

2) Téléchargez la dernière version d'ORDS, en l'occurrence la version 24.4.
https://www.oracle.com/database/sqldeveloper/technologies/db-actions/download/
Notre installation se fera en mode autonome.

3) Téléchargez la version JDK 11 ou supérieure. Dans notre cas, la version 23.
java



ÉTAPES À SUIVRE POUR L'INSTALLATION D'APEX

Dans cet article, nous partons du principe que vous disposez déjà d'une base de données Oracle , dans notre cas Oracle .20 sur le système d'exploitation Red Hat Enterprise Linux 9.

1) CRÉER LE TABLESPACE OÙ L'INSTALLATION D'APEX AURA LIEU

Nous créons un nouveau tablespace, que nous allons nommer APEX, dans lequel nous allons effectuer l'installation.

SQL> CREATE BIGFILE TABLESPACE APEX DATAFILE SIZE 500M AUTOEXTEND ON next 1G MAXSIZE UNLIMITED ;
- Nous vérifions qu'il a été installé correctement
SQL> select name from v$tablespace where name='APEX' ;

Une fois que vous avez téléchargé les ressources énumérées au début de l'article, vous devez extraire les fichiers d'installation d'Apex
et d'Ords dans un dossier spécifique pour chacune des installations.

2) INSTALLATION ORACLE

Nous nous rendons dans le dossier où les fichiers Apex ont été extraits, où se trouve le fichier apexins.sql
Le format d'installation est le suivant :
— @apexins.sql tablespace_apex tablespace_files tablespace_temp images

SQL> @apexins.sql APEX APEX APEX TEMP /i/

Après quelques minutes, vous recevrez un message indiquant que l'installation est terminée.

3) CRÉATION D'UN COMPTE ADMINISTRATEUR APEX

Une fois l'exécution de la commande précédente terminée, exécutons le script apxchpwd.sql qui créera le compte administrateur de l'instance dont le nom par défaut est ADMIN. Dans notre cas, nous laissons l'utilisateur ADMIN.

Les éléments suivants doivent être pris en compte lors du choix du mot de passe de l'utilisateur administrateur :

* Password must contain at least one punctuation character (!»`’#$%&()[]{},.*+-/|\:;?_~).

4) DÉVERROUILLER UN UTILISATEUR PUBLIC ET DÉFINIR UN MOT DE PASSE.

Déverrouillez l'utilisateur APEX_PUBLIC_USER et attribuez-lui un nouveau mot de passe, car ce compte est créé avec un mot de passe aléatoire lors de l'installation et laisse l'utilisateur verrouillé ; il doit donc être modifié avant de procéder aux configurations. Ce mot de passe ne peut pas contenir de caractères spéciaux.

L'utilisateur APEX_PUBLIC_USER a par défaut le profil DEFAULT, donc si vous voulez éviter l'expiration du mot de passe, vous devez changer le paramètre PASSWORD_LIFE_TIME. Dans mon cas, étant une instance de test, je vais créer un nouveau profil pour que le mot de passe n'expire pas, évidemment dans les environnements productifs ce n'est pas conseillé et pour des raisons de sécurité il est préférable de changer le mot de passe tous les 180 jours, la valeur établie dans le profil DEFAULT.

SQL> CREATE PROFILE "UNLIMITED_PWD_EXPIRATION" LIMIT
CPU_PER_SESSION UNLIMITED
CPU_PER_CALL UNLIMITED
CONNECT_TIME UNLIMITED
IDLE_TIME UNLIMITED
SESSIONS_PER_USER UNLIMITED
LOGICAL_READS_PER_SESSION UNLIMITED
LOGICAL_READS_PER_CALL ILLIMITÉ
PRIVATE_SGA ILLIMITÉ
COMPOSITE_LIMIT ILLIMITÉ
PASSWORD_LIFE_TIME ILLIMITÉ
PASSWORD_GRACE_TIME DEFAULT
PASSWORD_REUSE_MAX ILLIMITÉ
PASSWORD_REUSE_TIME ILLIMITÉ
PASSWORD_LOCK_TIME 1
FAILED_LOGIN_ATTEMPTS 10 ;

Attribuez le nouveau profil à l'utilisateur APEX_PUBLIC_USER. Modifiez le mot de passe et déverrouillez l'utilisateur.

5) CONFIGURATION DES SERVICES RESTful

À ce stade, nous allons configurer Oracle Data Services en tant que serveur web, où les fichiers statiques sont fournis via le module de service RESTful intégré à Oracle . Pour ce faire, nous devons exécuter le fichier apex_rest_config.sql.

Ce processus crée deux nouveaux comptes de base de données, nous devons donc attribuer le mot de passe aux utilisateurs nouvellement créés.

SQL> @apex_rest_config.sql 

Procédure PL/SQL terminée avec succès.
.
.
.
Procédure PL/SQL terminée avec succès.

Entrez un mot de passe pour l'utilisateur APEX_LISTENER []
Entrez un mot de passe pour l'utilisateur APEX_REST_PUBLIC_USER []

6) DESHABILITAR Oracle XML DB Protocol Server, si no lo está.

Deshabilitamos el servidor de protocolo XML para evitar que el puerto que vamos a configurar esté en uso.

6.1 - Nous vérifions qu'il est désactivé :

Dans le cas contraire, nous exécutons ce qui suit :

7. ACCÈS À LA BASE DE DONNÉES (ACL)

Par défaut, les services réseau qui vous permettent de vous connecter à l'utilisateur de la base de données qui possède le schéma APEX sont désactivés. Vous devez donc utiliser le paquet DBMS_NETWORK_ACL_ADMIN pour accorder des privilèges de connexion à cet utilisateur.

Avant de lancer la commande, vous devez déterminer quel hôte vous allez autoriser à se connecter à APEX.

  • Si nous voulons accorder des privilèges de connexion à n'importe quel hôte pour la base de données propriétaire du schéma APEX, nous utiliserons *.
  • Si nous voulons accorder des privilèges de connexion uniquement aux serveurs fonctionnant sur le même hôte que la base de données, nous utiliserons localhost.

Connecté en tant que DBA, nous exécutons la commande suivante. Dans notre cas, nous allons utiliser * pour donner des permissions de connexion à n'importe quel hôte.

SQL> BEGIN
DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
host => '*',
ace >ace(privilege_list => xs$name_list('connect'),
principal_name => APEX_APPLICATION.g_flow_schema_owner,
principal_type => xs_acl.ptype_db));
END;

/

Procédure PL/SQL terminée avec succès.

SQL>

8) INSTALLATION ORACLE Data Service (ORDS)

Nous créons un répertoire dans lequel l'installation aura lieu. Dans notre cas, il s'agit de /u01/ords.

unzip ords-24.4.0.345.1601.zip -d /u01/ords/

8.1) En dehors du répertoire ords, conformément aux spécifications Oracle, nous créons un répertoire config, dans lequel nous indiquerons ultérieurement la configuration de l'ORDS.

mkdir -p /u01/ords_install/config

8.2) Nous créons un dossier « images ».

mkdirimages

Nous copions toutes les images du répertoire «imagesde notre installation APEX vers le répertoire «imagesde notre ORDS.

cp -r images/u01/ords/

Créez un dossier log, en dehors du répertoire ords.

mkdir -p /u01/ords_install/logs

9) INSTALLATION DE JAVA

Avant de commencer l'installation de l'ORDS, il est nécessaire de disposer sur notre système de la version d'Oracle Java la version d'Apex. La version de Java prise en charge Java en fonction de la version d'Oracle Apex ; pour notre version, Java ou 17 est requis.

Nous vérifions notre version actuelle :

[oracle@localhost ords]$ java 
openjdk version « 1.8.0_272 »
OpenJDK Runtime Environment (build 1.8.0_272-b10)
OpenJDK 64-Bit Server VM (build 25.272-b10, mode mixte)
[oracle@localhost ords]$

Nous mettons à jour la version de java la manière suivante :

[oracle@localhost softwareapex]$ sudo rpm  jdk-23_linux-x64_bin.rpm

Nous vérifions à nouveau la version et nous nous assurons qu'elle a été correctement mise à jour :

[oracle@localhost softwareapex]$ java 
java "23.0.2" 21/01/2025
Java(TM) SE Runtime Environment (build 23.0.2+7-58)
Java (TM) 64-Bit Server VM (build 23.0.2+7-58, mode mixte, partage)

10 CRÉATION DES MOTS.

Nous créons un nouveau tablespace pour contenir les données ORDS.

SQL> CREATE BIGFILE TABLESPACE ORDS DATAFILE SIZE 500M AUTOEXTEND ON next 1G MAXSIZE UNLIMITED ;

Tablespace créé.

Lancer l'installation. Dans le dossier bin du répertoire ords, nous lançons la commande suivante.

./ords --config /u01/ords_install/config install --interactive --log-folder /u01/ords_install/logs

Il est important de noter que le paramètre -config indique le répertoire de configuration : Le paramètre -config pointe vers le répertoire de configuration et le paramètre -log-folder indique où seront hébergés les fichiers journaux d'ords.

Nous choisissons la base de données où l'installation aura lieu.

Oracle REST Data Services - Interactive Install

Enter a number to select the TNS net service name to use from /u01/app/oracle/product/19/dbhome_1/network/admin/tnsnames.ora or specify the database connection
[1] TEST SERVICE_NAME=test
[S] Specify the database connection
Choose [1]:

Nous passons en revue les valeurs d'installation et en modifions certaines pour les adapter à nos besoins. Une fois ces valeurs définies, nous utilisons l'option [A] et l'installation commence. Notre installation se fera avec le protocole HTTP.

 Introduzca un número para actualizar el valor, o bien seleccione la opción A para aceptar y continuar
[1] Tipo de conexión: TNS
[2] Conexión TNS: TNS_NAME=TEST TNS_FOLDER=/u01/sw/network/admin
Usuario administrador: SYS AS SYSDBA
[3] Contraseña de base de datos para usuario de tiempo de ejecución de ORDS (ORDS_PUBLIC_USER): <contraseña especificada>
[4] Usuario de tiempo de ejecución de ORDS y tablespaces de esquema: Valor por defecto: ORDS Temporal TEMP
[5] Función adicional: Acciones de Base de Datos
[6] Configurar e iniciar ORDS en modo autónomo: Sí
[7] Protocolo: HTTP
[8] Puerto HTTP: 8080
[9] Ubicación de recursos estáticos de APEX:
[A] Aceptar y continuar - Crear configuración e instalar ORDS en la base de datos
[Q] Salir - No continuar. Sin cambios

Une fois l'installation terminée, nous pouvons lancer l'exécutable ORDS pour accéder à Apex via le Web.

Dans le dossier ords bin, nous lançons manuellement la commande suivante :

./ords --config /u01/ords_install/config serve  --port 8080 imagesimages

Si tout est correct, il serait pratique de créer un script de démarrage/arrêt pour le service.

Vous pouvez maintenant accéder à votre page d'accueil APEX.

http://localhost:8080/ords

Écran initial après l'installation Oracle .

Mots-clés :
Oracle ACE