Publié le

Installation de la base de donnée Oracle sur Mac OS Sierra 10.12 ou version ultérieure

Auteurs

Si vous souhaitez créer une application utilisant Oracle Database sur Mac OS, vous pourriez vous heurter à la question de savoir comment installer la base de données et quels outils utiliser.

La première solution que vous trouverez passe par VirtualBox. C’est possible, mais c’est une solution très lourde :

  • Installer le logiciel VirtualBox
  • Télécharger la machine virtuelle Oracle Database (~7 Go)
  • Configurer les ports
  • Respecter les prérequis système

Les prérequis sont disponibles ici : Oracle VM Database.

oracle-on-mac-10-12-oracle-conf Une méthode beaucoup plus légère consiste à utiliser Docker pour stocker la base de données et SQL Developer pour s’y connecter.

Installer Docker

  1. Téléchargez Docker for Mac depuis le site officiel.

    • Créez un compte Docker (identifiant, mot de passe, email).
  2. Ouvrez le fichier Docker.dmg et glissez l’icône dans le dossier Applications. oracle-on-mac-10-12-docker-move-install
  3. Lancez Docker depuis le dossier Applications.

    • L’icône Docker apparaîtra en haut à droite de l’écran.
    • Pour vérifier que Docker fonctionne, vous pouvez exécuter dans le terminal :
    oracle-on-mac-10-12-docker-run
docker version
oracle-on-mac-10-12-docker-version

Stocker l’image Oracle Database dans Docker

Vous avez maintenant besoin d’une base de données à stocker dans Docker.

Plusieurs images de bases de données sont disponibles sur Docker.
Dans ce tutoriel, nous utilisons l’image truevoly/oracle-12c.
Vous pouvez l’utiliser si elle est toujours disponible, sinon vous pouvez chercher d’autres images oracle-12c sur le site Docker.

Dans un terminal, exécutez la commande suivante pour télécharger l’image dans Docker :

docker pull truevoly/oracle-12c

Une fois le téléchargement terminé, le message suivant apparaît :

Status: Downloaded newer for truevoly/oracle-12c:latest

Créer le conteneur

Le conteneur permettra de stocker la base de données en local.

  1. Créez d’abord un dossier pour l’image :
mkdir ~/oracle_data

Créez maintenant le conteneur et montez-le dans le dossier créé en utilisant l’image oracle-12c. Cette commande lancera également l’instance :

docker run -d -p 8080:8080 -p 1521:1521 -v ~/oracle_data/:/u01/app/oracle truevoly/oracle-12c

À la fin de l’exécution, un hash sera généré.
Vérifiez que le conteneur fonctionne avec la commande suivante :

docker ps
oracle-on-mac-10-12-docker-ps

Gérer le conteneur avec Kitematic

Kitematic est une solution de bureau (legacy) qui permet de gérer les conteneurs Docker via une interface graphique.

Une fois installé, ouvrez Kitematic et vous verrez le conteneur Oracle en cours d’exécution. oracle-on-mac-10-12-container-conf

Créer des bases de données en ligne de commande

Vous pouvez utiliser le terminal pour vous connecter à la base de données, mais il est préférable d’utiliser un client.

C’est plus facile à gérer de cette façon.

Si vous souhaitez malgré tout utiliser la ligne de commande, c’est accessible via Kitematic.

  • Cliquez sur le bouton EXEC → un terminal s’ouvrira.
  • Vous pouvez vous connecter à sqlplus avec la commande suivante :
sqlplus system/oracle@//localhost:1521/xe
oracle-on-mac-10-12-sqlplus

Utilisateurs et bases de données

Dans Oracle-12c, les utilisateurs et les bases de données sont les mêmes, vous pouvez donc les créer directement dans cette console.


Utiliser SQL Developer

  1. Téléchargez SQL Developer depuis le site officiel.
  2. Décompressez le fichier .zip et placez-le dans le dossier Applications.
  3. Ouvrez SQL Developer.

Vous pouvez tester la connexion à votre base Oracle en utilisant :

  • Nom d’utilisateur : system
  • Mot de passe : oracle

Choisissez un nom de connexion quelconque. Vous pouvez conserver l’hôte, le port et le SID par défaut.

oracle-on-mac-10-12-conf-connexion

Connexion établie

La connexion est maintenant établie.

Par exemple, vous pouvez exécuter ce script dans SQL Developer pour créer une nouvelle base de données nommée TEST :

CREATE USER TEST IDENTIFIED BY passtest DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE temp QUOTA 250M on USERS;
GRANT CONNECT, RESOURCE, DBA TO TEST;
GRANT CREATE SESSION TO TEST;
GRANT CREATE TABLE TO TEST;
GRANT CREATE VIEW TO TEST;
GRANT CREATE ANY TRIGGER TO TEST;
GRANT CREATE ANY PROCEDURE TO TEST;
GRANT CREATE SEQUENCE TO TEST;
GRANT CREATE SYNONYM TO TEST;