¿Cómo conectamos una Instancia Linux con Autonomous Database en OCI?

Ingeniero informático, Oracle ACE, DBA y Arquitecto OCI, con más de 15 años de experiencia en plataformas Oracle. Certificado en OCI Certified Architect Professional y OCI Migration and Integration Certified Professional.
Para configurar la conexión una Autonomous Database dentro de una Instancia de Linux en OCI, lo primero que debemos hacer es descargarnos la wallet de nuestra ATP

Una vez descargada la información de la wallet, la subimos la wallet al Object Storage.

Una vez se encuentre la wallet en el Object Storage, creamos la solicitud Pre-Authenticated para descargarla en nuestro entorno


Copiamos la URL para poder descargarla en nuestro entorno de linux
[opc@~]$ mkdir walletATP
[opc@~]$ cd walletATP/
[opc@walletATP]$ wget -P /home/opc/walletATP/ <Pre-Authenticated Request URL>
Resolving objectstorage...
Connecting to .....
HTTP request sent, awaiting response... 200 OK
Length: 21977 (21K) [application/x-zip-compressed]
Saving to: ‘/home/opc/walletATP/Wallet_XXXX.zip’
100%[==============================================================================================================================================================================================>] 21,977 --.-K/s in 0s
2024-02-01 12:05:08 (212 MB/s) - ‘/home/opc/walletATP/Wallet_XXXX.zip’ saved [21977/21977]
[opc@walletATP]$
Una vez descargado la wallet, debemos realizar unzip y editar el archivo sqlnet.ora para especificar donde se encuentra nuestra wallet
[opc@walletATP]$ unzip Wallet_XXXXX.zip
Archive: Wallet_OF2BCE.zip
inflating: ewallet.pem
inflating: README
inflating: cwallet.sso
inflating: tnsnames.ora
inflating: truststore.jks
inflating: ojdbc.properties
inflating: sqlnet.ora
inflating: ewallet.p12
inflating: keystore.jks
[opc@walletATP]$ vi sqlnet.ora
[opc@walletATP]$ more sqlnet.ora
WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/opc/walletATP")))
SSL_SERVER_DN_MATCH=no
[opc@walletATP]$
Bien, ya queda menos. Ahora descargarnos los binarios de Oracle desde el repositorio de Oracle Linux 7.
En este caso no hace falta subirlo al Object Storage, con que obtengamos la url de descarga del repositorio es suficiente, aunque si queremos subirlo al Object Storage, se podría hacer, repitiendo los pasos anteriores.
[opc@~]$ mkdir oracle
[opc@~]$ wget -P /home/opc/oracle/ https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/getPackage/oracle-instantclient19.9-sqlplus-19.9.0.0.0-1.x86_64.rpm
[opc@~]$ wget -P /home/opc/oracle/ https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/getPackage/oracle-instantclient19.9-basic-19.9.0.0.0-1.x86_64.rpm
--2024-02-08 12:34:09-- https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/getPackage/oracle-instantclient19.9-basic-19.9.0.0.0-1.x86_64.rpm
[opc@~]$ sudo rpm -ivh --nodeps oracle-instantclient19.9-sqlplus-19.9.0.0.0-1.x86_64.rpm
[opc@~]$ sudo rpm -ivh oracle-instantclient19.9-basic-19.9.0.0.0-1.x86_64.rpm
[opc@~]$ export LD_LIBRARY_PATH=/usr/lib/oracle/19.9/client64/lib/
[opc@~]$ echo $LD_LIBRARY_PATH
[opc@~]$ sqlplus64 -version
Modificamos el archivo .bashrc para incluir la variable TNS_ADMIN junto con la especificación del alias para sqlplus.
[opc@ ~]$ cat .bashrc
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER=
# User specific aliases and functions
export TNS_ADMIN=/home/opc/wallet
alias sqlplus=sqlplus64
Una vez configurado la wallet, los binarios y el .bashrc, probamos la conexión a la ATP
[opc@ ~]$ sqlplus /nolog
SQL*Plus: Release 19.0.0.0.0 - Production on Thu Feb 8 15:33:05 2024
Version 19.9.0.0.0
Copyright (c) 1982, 2020, Oracle. All rights reserved.
SQL> conn admin/XXXXX@XXXXX_tp
Conectado.
SQL>
SQL> Select * From Dual;
D
-
X
SQL> exit
Perfecto, ya podemos conectarnos a nuestra ATP. Espero que os sirva.
![[26ai] Limpieza de objetos obsoletos en desuso](/_next/image?url=https%3A%2F%2Fcdn.hashnode.com%2Fuploads%2Fcovers%2F65605419d28f19cc44df7ef1%2F93181086-1008-4184-8454-33b7367ebedb.png&w=3840&q=75)
![[26ai] Hybrid Read-Only Mode PDB](/_next/image?url=https%3A%2F%2Fcdn.hashnode.com%2Fuploads%2Fcovers%2F65605419d28f19cc44df7ef1%2Fde208bd2-5e24-4fd3-acf7-8e5394d95283.png&w=3840&q=75)
![[26ai] ALERT_LOG_MAX_SIZE](/_next/image?url=https%3A%2F%2Fcdn.hashnode.com%2Fuploads%2Fcovers%2F65605419d28f19cc44df7ef1%2Fcbb365d0-4428-4a41-930d-516ce59e3355.jpg&w=3840&q=75)
![[26ai] ConnStr Tool](/_next/image?url=https%3A%2F%2Fcdn.hashnode.com%2Fuploads%2Fcovers%2F65605419d28f19cc44df7ef1%2F5005f06e-946c-49ba-bfe8-7fe18d1075d9.png&w=3840&q=75)
![[26ai] Instalación de Oracle26ai en Linux 9](/_next/image?url=https%3A%2F%2Fcdn.hashnode.com%2Fuploads%2Fcovers%2F65605419d28f19cc44df7ef1%2Fd9a6ba10-eb2d-4fee-8a0c-f4957cbdc676.png&w=3840&q=75)