Creare un'applicazione Python

Per creare un'applicazione Python che accede a un Autonomous Database, devi iniziare configurando il tuo sistema di sviluppo in modo da supportare l'accesso al database e sfruttare le funzioni di disponibilità continua e ad alte prestazioni di Autonomous Database.

Dopo aver configurato il sistema di sviluppo, è possibile codificare le connessioni al database e le istruzioni SQL nell'applicazione per usufruire di queste funzioni.

Suggerimento

Per un'alternativa alla lettura dei seguenti argomenti, è possibile consultare Lab 4: Build Python Application Stacks nel Workshop su Oracle Autonomous Database Dedicated for Developers and Database Users.

Configura sistema di sviluppo Python

Per configurare il sistema di sviluppo in modo che l'applicazione Python possa sfruttare la disponibilità continua e le funzioni ad alte prestazioni di un Autonomous Database, eseguire queste operazioni.

  1. Scaricare e installare Python.
  2. Scaricare e installare Oracle Instant Client.
  3. Scaricare e installare cx_Oracle.
  4. Scaricare le credenziali client per il database e renderle disponibili per Oracle Instant Client.

Operazioni preliminari

Il sistema di sviluppo deve soddisfare determinati criteri per configurarlo correttamente.

Scarica e installa Python

  • Oracle Linux:

    Oracle Linux 7 include Python 2.7, quindi è sufficiente eseguire questo comando:

    sudo yum -y install oracle-release-el7
  • Altre architetture e OSes:

    Andare alla pagina python.org Download e scaricare e installare la versione più recente di Python 2.7 o Python 3.5 (o successiva) per il sistema operativo e l'architettura.

Scaricare e installare Oracle Instant Client

Sono necessarie librerie Oracle Instant Client versione 19.6 o successiva.

Scaricare e installare il pacchetto di base di Oracle Instant Client per il sistema operativo e l'architettura del sistema:

  • Oracle Linux:

    Eseguire i comandi seguenti per scaricare e installare il pacchetto di base di Oracle Instant Client:

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

    (Se si desidera visualizzare un elenco di tutti i pacchetti Instant Client, andare a http://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/index.html.)

  • Altre architetture e OSes:

    1. Andare alla pagina Download di Oracle Instant Client e selezionare il download per il sistema operativo e l'architettura del sistema.

    2. Nella pagina di download, accettare il contratto di licenza di Oracle Technology Network, scaricare l'ultima versione del pacchetto di base, quindi installarlo seguendo le istruzioni nella parte inferiore della pagina di download.

Scaricare e installare cx_Oracle

Utilizzare il pacchetto pip di Python per installare cx_Oracle da PyPI (l'indice dei pacchetti Python).:

  • Oracle Linux:

    Eseguire i comandi seguenti per scaricare il pacchetto pip e utilizzarlo per installare 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
  • Altre architetture e OSes:

    Eseguire questo comando:

    python -m pip install cx_Oracle --upgrade

Scaricare e installare le credenziali client per il database

  1. Scaricare il file zip contenente le credenziali client per il database in una directory sicura del computer.

    Questo file zip può essere scaricato dalla pagina Dettagli del database nella console di Oracle Cloud. Se si dispone di un account utente Oracle Cloud che consente di accedere a questa pagina, scaricare le credenziali come indicato di seguito. Se non si dispone di un account di questo tipo, è necessario ottenere il file zip dall'amministratore del database, insieme alla password utilizzata per proteggere il file zip.

    1. Nel browser Web, collegarsi a Oracle Cloud e andare alla pagina Dettagli per Autonomous Database.

    2. Fare clic su Connessione DB.

    3. Nella pagina Connessione al database fare clic su Scarica.

    4. Nella finestra di dialogo Scarica wallet, immettere una password per il wallet nel campo Password e confermare la password nel campo Conferma password.

      La password deve avere una lunghezza di almeno 8 caratteri e deve includere almeno 1 lettera e 1 carattere numerico o 1 carattere speciale.

    5. Fare clic su Download per salvare il file ZIP delle credenziali del client in una directory sicura.

  2. Dopo aver scaricato il file zip, attenersi alla procedura riportata di seguito.

    1. Estrarre il file zip delle credenziali client.

    2. Modificare il file sqlnet.ora fornito nelle credenziali client, sostituendo "?/network/admin" con il percorso completo della directory in cui sono state decompresse le credenziali client; ad esempio, modificare:

      (DIRECTORY="?/network/admin")

      a:

      (DIRECTORY="/users/jdoe/adbcredentials")
    3. Creare la variabile di ambiente TNS_ADMIN, impostandone il valore sul percorso completo della directory in cui sono state decompresse le credenziali client.

Connessioni al database di codice e istruzioni SQL

Dopo aver configurato il sistema di sviluppo per supportare la connettività dell'applicazione Python a un Autonomous Database, seguire le linee guida riportate di seguito per ottenere prestazioni elevate e disponibilità continua delle connessioni dell'applicazione al database.

Ad esempio:

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

In questo esempio viene creato un pool per le connessioni al servizio di database tp_tls e viene abilitato FAN impostando il parametro events su True.

Risorse aggiuntive

Per informazioni dettagliate su cx_Oracle, visitare la pagina cx_Oracle Documentazione.

Per esempi di codice che dimostrano un'ampia varietà di funzioni cx_Oracle, andare alla cartella Esempi di python-cx_Oracle.