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.
- 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. - 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.
-
- 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).
-
Tema principal: Conexión de aplicaciones Python a Autonomous Database