Créer une application Python

Pour créer une application Python qui accède à une base de données Autonomous Database, vous commencez par configurer votre système de développement afin de prendre en charge l'accès à la base de données qui peut tirer parti de la disponibilité continue et des fonctions haute performance d'Autonomous Database.

Après avoir configuré votre système de développement, vous codez les connexions à la base de données et les énoncés SQL dans votre application afin de tirer parti de ces fonctions.

Conseil :

Pour mettre en pratique les instructions décrites dans les rubriques qui suivent, exécutez l'étape Exercice 4 : Créer des piles d'applications Python dans l'atelier sur l'utilisation des bases de données autonomes Oracle dédiées pour développeurs et utilisateurs de base de données.

Configurer votre système de développement Python

Pour configurer votre système de développement de sorte que votre application Python puisse tirer parti des fonctions de disponibilité continue et de haute performance d'une base de données Autonomous Database, vous devez effectuer ces étapes.

  1. Téléchargez et installez Python.
  2. Téléchargez et installez Oracle Instant Client.
  3. Téléchargez et installez cx_Oracle.
  4. Téléchargez les données d'identification du client pour la base de données et mettez-les à la disposition d'Oracle Instant Client.

Étapes préliminaires

Pour pouvoir être configuré, votre système de développement doit répondre à certains critères.

Télécharger et installer Python

  • Oracle Linux :

    Oracle Linux 7 inclut Python 2.7. Il vous suffit donc d'exécuter cette commande :

    sudo yum -y install oracle-release-el7
  • Autres architectures et OSes :

    Accédez à la page Téléchargements de python.org et téléchargez et installez la version Python 2.7 ou Python 3.5 (ou ultérieure) pour votre système d'exploitation et votre architecture.

Télécharger et installer Oracle Instant Client

Vous avez besoin des bibliothèques d'Oracle Instant Client version 19.6 ou ultérieure.

Téléchargez et installez l'ensemble de base Oracle Instant Client pour le système d'exploitation et l'architecture de votre système :

  • Oracle Linux :

    Exécutez ces commandes pour télécharger et installer l'ensemble de base Oracle Instant Client :

    sudo yum -y install oracle-release-el7
    sudo yum -y install oracle-instantclient19.3-basic

    (Pour voir la liste de tous les ensembles Instant Client, accédez à http://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/index.html.)

  • Autres architectures et OSes :

    1. Accédez à la page de téléchargements d'Oracle Instant Client et sélectionnez le téléchargement correspondant au système d'exploitation et à l'architecture de votre système.

    2. Dans la page de téléchargement, acceptez le contrat de licence d'Oracle Technology Network, téléchargez la dernière version de l'ensemble de base, puis installez-le en suivant les instructions au bas de la page de téléchargement.

Télécharger et installer cx_Oracle

Utilisez l'ensemble pip de Python pour installer cx_Oracle à partir de PyPI (index des ensembles Python) :

  • Oracle Linux :

    Exécutez ces commandes pour télécharger l'ensemble pip, puis utilisez-le pour installer cx_Oracle :

    sudo yum -y install oracle-release-el7
    curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
    sudo python get-pip.py
    python -m pip install cx_Oracle --upgrade
  • Autres architectures et OSes :

    Exécutez la commande suivante :

    python -m pip install cx_Oracle --upgrade

Télécharger et installer les données d'identification du client pour la base de données

  1. Téléchargez le fichier zip contenant les données d'identification du client pour votre base de données dans un répertoire sécurisé sur votre ordinateur.

    Ce fichier zip est disponible pour téléchargement à partir de la page Détails de la base de données dans la console Oracle Cloud. Si vous avez un compte d'utilisateur Oracle Cloud qui vous permet d'accéder à cette page, téléchargez les données d'identification comme suit. Si vous ne disposez pas d'un tel compte, vous devez obtenir le fichier zip auprès de l'administrateur de la base de données, avec le mot de passe utilisé pour protéger le fichier zip.

    1. Dans votre navigateur Web, connectez-vous à Oracle Cloud et naviguez jusqu'à la page Détails pour Autonomous Database.

    2. Cliquez sur Connexion à la base de données.

    3. Dans la page Connexion à la base de données, cliquez sur Télécharger.

    4. Dans la boîte de dialogue Download Wallet (Télécharger le portefeuille), entrez un mot de passe dans le champ Password (Mot de passe) et confirmez le mot de passe dans le champ Confirmer le mot de passe.

      Le mot de passe doit comporter au moins 8 caractères et doit comprendre au moins 1 lettre et 1 caractère numérique ou 1 caractère spécial.

    5. Cliquez sur Télécharger pour enregistrer le fichier zip des données d'identification du client dans un répertoire sécurisé.

  2. Après avoir téléchargé le fichier zip, procédez de la façon suivante :

    1. Décompressez le fichier zip de données d'identification du client.

    2. Modifiez le fichier sqlnet.ora fourni dans les données d'identification du client, en remplaçant "?/network/admin" par le chemin complet du répertoire où vous avez décompressé les données d'identification du client. Par exemple, modifiez :

      (DIRECTORY="?/network/admin")

      en :

      (DIRECTORY="/users/jdoe/adbcredentials")
    3. Créez la variable d'environnement TNS_ADMIN et réglez sa valeur au chemin complet du répertoire où vous avez décompressé les données d'identification du client.

Coder les connexions aux bases de données et les énoncés SQL

Après avoir configuré votre système de développement pour prendre en charge la connectivité des applications Python à une base de données Autonomous Database, suivez ces directives pour atteindre une haute performance et une disponibilité continue des connexions de votre application à la base de données :

Par exemple :

pool = cx_Oracle.SessionPool("appuser",
                             SampleEnv.GetMainPassword(),
                             "tp_tls",
                             events=True,
                             threaded=True)

Cet exemple crée une réserve de connexions au service de base de données tp_tls et active l'avis rapide des applications en réglant le paramètre events à True.

Ressources supplémentaires

Pour des informations détaillées sur cx_Oracle, allez à la page de documentation sur cx_Oracle.

Pour les exemples de code qui illustrent de nombreuses fonctions de cx_Oracle, allez au dossier python-cx_Oracle/samples.