Instalación de Python y el controlador python-oracledb

Para conectarse a Autonomous Database desde la aplicación Python, instale Python y el controlador python-oracledb.

  1. Instale Python 3, si aún no está disponible.

    La versión de Python que utilice depende del sistema operativo y el hardware del cliente. Por ejemplo, Windows, Linux, macOS y otros.

    Nota

    Oracle recomienda estar al día con las versiones de controladores Python y python-oracledb.
  2. Instale el controlador python-oracledb desde PyPI.

    El controlador python-oracledb es un módulo de extensión de lenguaje de programación Python que permite a los programas Python conectarse a Oracle Database. El controlador python-oracledb es la nueva versión principal renombrada del popular controlador cx_Oracle.

    Versiones admitidas del controlador python-oracledb: python-oracledb 1.0 (o posterior)

    Ejecute el siguiente comando para actualizar python:

    python -m pip install oracledb --upgrade

    Deberá ver una salida similar a la siguiente:

    Collecting oracledb
      Downloading oracledb-1.0.3-cp310-cp310-win_amd64.whl (1.0 MB)
         ---------------------------------------- 1.0/1.0 MB 1.8 MB/s eta 0:00:00
    Collecting cryptography>=3.4
      Downloading cryptography-37.0.4-cp36-abi3-win_amd64.whl (2.4 MB)
         ---------------------------------------- 2.4/2.4 MB 3.5 MB/s eta 0:00:00
    Collecting cffi>=1.12
      Downloading cffi-1.15.1-cp310-cp310-win_amd64.whl (179 kB)
         ---------------------------------------- 179.1/179.1 kB 5.4 MB/s eta 0:00:00
    Collecting pycparser
      Downloading pycparser-2.21-py2.py3-none-any.whl (118 kB)
         ---------------------------------------- 118.7/118.7 kB 7.2 MB/s eta 0:00:00
    Installing collected packages: pycparser, cffi, cryptography, oracledb
    Successfully installed cffi-1.15.1 cryptography-37.0.4 oracledb-1.0.3 pycparser-2.21

    Notas para la instalación de python-oracledb:

    • Si está detrás de un proxy, utilice la opción --proxy para agregar un servidor proxy al comando. Por ejemplo:

      python -m pip install oracledb --upgrade --proxy=http://proxy.example.com:80
    • En el caso de que no tenga permiso para escribir en directorios del sistema, incluya la opción --user. Por ejemplo:

      python -m pip install oracledb --upgrade --user
    • Si un paquete binario no está disponible para su plataforma, al ejecutar pip, se descargará el paquete de origen. El origen se compila y se instala el binario resultante.

    Consulte Installing python-oracledb para obtener opciones y consejos adicionales.

  3. Si desea utilizar el controlador python-oracledb en modo grueso, instale el software del cliente de Oracle.

    Por defecto, python-oracledb se ejecuta en modo Thin, que se conecta directamente a Oracle Database. El modo Thin no necesita bibliotecas de cliente de Oracle. Sin embargo, algunas funcionalidades adicionales están disponibles cuando python-oracledb se ejecuta en modo grueso.

    Nota

    Consulte Funciones de Oracle Database compatibles con python-oracledb para obtener información sobre las funciones soportadas en los modos Thin y Thick de python-oracledb. No todas las funciones que se muestran en este enlace están disponibles con Autonomous Database.

    Python-oracledb utiliza el modo Thick cuando se utilizan las bibliotecas de Oracle Instant Client o las bibliotecas de Oracle Database Client y se llama a oracledb.init_oracle_client() en el código Python.

    Al instalar el software de cliente de Oracle, existen diferencias en las versiones mínimas necesarias para las conexiones mTLS y TLS, de la siguiente manera:

    • Conexiones mutuas de TLS (mTLS):

      • Si la base de datos está en una computadora remota, descargue el paquete gratuito "Basic" o "Basic Light" de Oracle Instant Client para la arquitectura de su sistema operativo. Utilice una versión admitida: Oracle Instant Client: 18.19 (o posterior), 19.2 (o posterior) o 21 (versión base o posterior).

      • También puede utilizar las bibliotecas de cliente de Oracle Database completas cuando estén disponibles en el sistema (incluido el cliente de Oracle Database completo: Oracle Database Client: 18.19 (o posterior), 19.2 (o posterior) o 21 (versión base o posterior).

    • Conexiones de TLS: los clientes de Oracle Call Interface (OCI) soportan la autenticación de TLS sin una cartera si utiliza las siguientes versiones de cliente:

      • Oracle Instant Client/Oracle Database Client 19.14 (o posterior), 21.5 (o posterior) o 23.1 (o posterior)
      • También puede utilizar las bibliotecas de cliente de Oracle Database completas cuando estén disponibles en el sistema, incluido el cliente de Oracle Database completo 19.14 (o posterior) y 21.5 (o posterior).