Slide 1

Slide 1 text

¡Comience a utilizar Oracle Database 23ai AHORA! LAOUC Community Tour 2024 2 a 23 de Agosto 2024

Slide 2

Slide 2 text

Database Reliability Engineering MAA ⁘ RAC ⁘ RMAN Data Guard ⁘ Sharding ⁘ Partitioning Information Lifecycle Management Exadata & Engineered Systems Database Modernization Upgrades ⁘ Patching ⁘ Migrations Cloud ⁘ Hybrid Automation DevOps ⁘ IaC ⁘ Containers ⁘ Terraform Vagrant ⁘ Ansible Observability AHF ⁘ TFA ⁘ CHA ⁘ CHM

Slide 3

Slide 3 text

www.viscosityna.com @ViscosityNA Oracle on Docker Running Oracle Databases in Linux Containers Free sample chapter: https://oraclesean.com

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

km mi Mexico 3,584 2,227 Guatemala 1,056 656 Costa Rica 854 531 Panama 1,813 1,127 Chile 4,985 3,098 Brazil 2,617 1,626 Uruguay 1,567 974 Argentina 221 137 Paraguay 1,037 644 Home 9,753 6,061 ------ ------ 27,487 17,081 ¡Me gustan los aviones! ¡Me gustas tú! ¡Me gusta viajar! ¡Me gustas tú! ~ Manu Chao

Slide 6

Slide 6 text

www.viscosityna.com @ViscosityNA ¡Gracias por su paciencia y comprensión!

Slide 7

Slide 7 text

www.viscosityna.com @ViscosityNA ¿Que es 23ai Free?

Slide 8

Slide 8 text

www.viscosityna.com @ViscosityNA Anteriormente conocida como Oracle Database XE Lanzamiento gratuito de Oracle 23ai Diseñado para facilitar el uso en: • Desarrolladores • Científicos de datos • Administradores de bases de datos • Educadores • Experimentadores

Slide 9

Slide 9 text

www.viscosityna.com @ViscosityNA ¡Comience a utilizar las nuevas funciones de Oracle 23ai AHORA! Lanzamiento gratuito de Oracle 23ai • Dualidad relacional JSON • Esquemas JSON • Gráficos de propiedades • Dominios SQL • Procedimientos almacenados de JavaScript • ...¡¡y más!!

Slide 10

Slide 10 text

www.viscosityna.com @ViscosityNA Lanzamiento gratuito de Oracle 23ai Capacidades: • Hasta 12 GB de datos de usuario • Hasta 2 GB de RAM • Hasta 2 subprocesos de CPU

Slide 11

Slide 11 text

www.viscosityna.com @ViscosityNA Opciones: Cómo empezar a utilizar Oracle 23ai gratis • Instalar en Linux • Instalar en Windows • Ejecutar en VirtualBox • Ejecutar en Docker/Podman • Ejecutar en la capa gratuita de OCI Guia: https://www.oracle.com/database/free/get-started

Slide 12

Slide 12 text

www.viscosityna.com @ViscosityNA Instalar en Linux

Slide 13

Slide 13 text

www.viscosityna.com @ViscosityNA Ellos estan incompletos ¡No sigas las instrucciones! https://www.oracle.com/database/free/get-started Perdido las instrucciones para instalar: • dnf de preinstall RPM • curl/descargar la base de datos RPM

Slide 14

Slide 14 text

www.viscosityna.com @ViscosityNA sudo dnf install -y oracle-database-preinstall-23ai-1.0-2.el8.x86_64 curl -JLO \ https://download.oracle.com/otn-pub/otn_software/db-free/\ oracle-database-free-23ai-1.0-1.el8.x86_64.rpm sudo dnf localinstall -y oracle-database-free-23ai-1.0-1.el8.x86_64.rpm Instalación de Linux: OEL8/RHEL8

Slide 15

Slide 15 text

www.viscosityna.com @ViscosityNA sudo dnf install -y oracle-database-preinstall-23ai-1.0-2.el9.x86_64 curl -JLO \ https://download.oracle.com/otn-pub/otn_software/db-free/\ oracle-database-free-23ai-1.0-1.el9.x86_64.rpm sudo dnf localinstall -y oracle-database-free-23ai-1.0-1.el9.x86_64.rpm Instalación de Linux: OEL9/RHEL9

Slide 16

Slide 16 text

www.viscosityna.com @ViscosityNA $ sudo dnf localinstall -y oracle-database-free-23ai-1.0-1.el8.x86_64.rpm ========================================================================================= Package Architecture Version Repository Size ========================================================================================= Installing: oracle-database-free-23ai x86_64 1.0-1 @commandline 1.3 G Transaction Summary ========================================================================================= Install 1 Package ... [INFO] Oracle home installed successfully and ready to be configured. To configure Oracle Database Free, optionally modify the parameters in '/etc/sysconfig/oracle-free-23ai.conf' and then run '/etc/init.d/oracle-free-23ai configure' as root. Verifying : oracle-database-free-23ai-1.0-1.x86_64 Installed: oracle-database-free-23ai-1.0-1.x86_64 Complete! Instalación de Linux

Slide 17

Slide 17 text

www.viscosityna.com @ViscosityNA #This is a configuration file to setup the Oracle Database. #It is used when running '/etc/init.d/oracle-free-23ai configure'. # LISTENER PORT used Database listener, Leave empty for automatic port assignment LISTENER_PORT= # Character set of the database CHARSET=AL32UTF8 # Database file directory # If not specified, database files are stored under Oracle base/oradata DBFILE_DEST= /etc/sysconfig/oracle-free-23ai.conf (1)

Slide 18

Slide 18 text

www.viscosityna.com @ViscosityNA # DB Domain name DB_DOMAIN= # Configure TDE CONFIGURE_TDE=false # Encrypt Tablespaces list, Leave empty for user tablespace alone or provide # ALL for encrypting all tablespaces # For specific tablespaces use SYSTEM:true,SYSAUX:false ENCRYPT_TABLESPACES= # SKIP Validations, memory, space SKIP_VALIDATIONS=false /etc/sysconfig/oracle-free-23ai.conf (2)

Slide 19

Slide 19 text

www.viscosityna.com @ViscosityNA $ sudo /etc/init.d/oracle-free-23ai configure Specify a password to be used for database accounts. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. Note that the same password will be used for SYS, SYSTEM and PDBADMIN accounts: Confirm the password: Configuring Oracle Listener. Listener configuration succeeded. Configuring Oracle Database FREE. Enter SYS user password: *************** Enter SYSTEM user password: ***************** Enter PDBADMIN User Password: *************** Prepare for db operation 7% complete Copying database files Configurar la base de datos

Slide 20

Slide 20 text

www.viscosityna.com @ViscosityNA Creating Pluggable Databases 54% complete 71% complete Executing Post Configuration Actions 93% complete Running Custom Scripts 100% complete Database creation complete. For details check the logfiles at: /opt/oracle/cfgtoollogs/dbca/FREE. Database Information: Global Database Name:FREE System Identifier(SID):FREE Look at the log file "/opt/oracle/cfgtoollogs/dbca/FREE/FREE.log" for further details. Connect to Oracle Database using one of the connect strings: Pluggable database: hostname/FREEPDB1 Multitenant container database: hostname Configurar la base de datos (cont)

Slide 21

Slide 21 text

www.viscosityna.com @ViscosityNA Instalar en Windows

Slide 22

Slide 22 text

www.viscosityna.com @ViscosityNA Instalar en Windows Descargar el software: https://download.oracle.com/otn-pub/otn_software/db-express/WINDOWS.X64_234000_free.zip Guia de 23ai en Windows: https://docs.oracle.com/en/database/oracle/oracle-database/23/xeinw/index.html Guia de instalar en Windows: https://docs.oracle.com/en/database/oracle/oracle-database/23/xeinw/installing-oracle-database-xe.html

Slide 23

Slide 23 text

www.viscosityna.com @ViscosityNA Ejecutar en VirtualBox

Slide 24

Slide 24 text

www.viscosityna.com @ViscosityNA Ejecutar en VirtualBox Descargar el archivo del OVM: https://download.oracle.com/otn_software/virtualbox/dd/Oracle_Database_23ai_Free_Developer.ova

Slide 25

Slide 25 text

www.viscosityna.com @ViscosityNA Importa tu máquina virtual: Ejecutar en VirtualBox • Haz clic en File > Import Appliance • Haz clic en Choose... • Selecciona Oracle_Database_23ai_Free_Developer.ova • Hax clic en Next

Slide 26

Slide 26 text

www.viscosityna.com @ViscosityNA Ejecutar en Docker o Podman

Slide 27

Slide 27 text

www.viscosityna.com @ViscosityNA Descargar Docker o Podman Ejecutar en Docker o Podman • Docker: https://docker.com https://docs.docker.com/guides/getting-started • Podman: https://podman.io https://podman.io/docs/installation

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

www.viscosityna.com @ViscosityNA Descargar un imagen de Oracle 23ai Free Ejecutar en Docker o Podman • Oracle Container Registry: https://container-registry.oracle.com • ¡La única fuente oficial de imágenes de bases de datos!

Slide 31

Slide 31 text

No content

Slide 32

Slide 32 text

No content

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

No content

Slide 36

Slide 36 text

No content

Slide 37

Slide 37 text

www.viscosityna.com @ViscosityNA docker pull container-registry.oracle.com/database/free:23.4.0.0 podman pull container-registry.oracle.com/database/free:23.4.0.0 # docker pull container-registry.oracle.com/database/free:23.4.0.0 23.4.0.0: Pulling from database/free 6d6e36f7c9fb: Pull complete 21def9023b6f: Pull complete 5e7b2cfeb7fa: Pull complete b4a24759beff: Pull complete 78bba54e9814: Pull complete 716b489ad5ad: Pull complete c23fd8c6cbee: Pull complete 79dea26b3a5a: Pull complete 5dfbcf799df3: Pull complete 154719a62576: Pull complete Digest: sha256:83edd0756fda0e5faecc0fdf047814f0177d4224d7bf037e4900123ee3e08718 Status: Downloaded newer image for container-registry.oracle.com/database/free:23.4.0.0 container-registry.oracle.com/database/free:23.4.0.0

Slide 38

Slide 38 text

www.viscosityna.com @ViscosityNA docker images podman images # docker images REPOSITORY TAG IMAGE ID CREATED SIZE container-registry.oracle.com/database/free 23.4.0.0 7510f8869b04 3 months ago 8.7GB container-registry.oracle.com/database/enterprise 19.19.0.0 979416fa8cea 12 months ago 6.21GB

Slide 39

Slide 39 text

No content

Slide 40

Slide 40 text

www.viscosityna.com @ViscosityNA docker run -d \ --name my-db \ container-registry.oracle.com/database/free:23.4.0.0 docker logs -f my_db

Slide 41

Slide 41 text

www.viscosityna.com @ViscosityNA Crear un directorio de base de datos # Crear un directorio de la base de datos base: ORADATA=~/oradata mkdir -p ${ORADATA}

Slide 42

Slide 42 text

www.viscosityna.com @ViscosityNA Crear un directorio de scripts # Crear un directorio de la scripts: mkdir -p ${ORADATA}/scripts

Slide 43

Slide 43 text

www.viscosityna.com @ViscosityNA Establecer variables # Dale un nombre al contenedor: CONTAINER_NAME=ORCL # Configure el SID de la base de datos y el nombre de PDB # (no es necesario para 23ai): ORACLE_SID=ORCL ORACLE_PDB=ORCLPDB

Slide 44

Slide 44 text

www.viscosityna.com @ViscosityNA Crear directorios por archivos # Cree directorios para auditoría, datos y diagnósticos: for dir in admin data diag do mkdir -p ${ORADATA}/${CONTAINER_NAME}/${dir} # Limpiar archivos existentes: rm -fr ${ORADATA}/${CONTAINER_NAME}/${dir}/* done

Slide 45

Slide 45 text

www.viscosityna.com @ViscosityNA Un comando útil para 23ai Free Edition docker rm -f ${CONTAINER_NAME} 2>/dev/null docker run -d \ --name ${CONTAINER_NAME} \ --volume ${ORADATA}/${CONTAINER_NAME}/data:/opt/oracle/oradata \ --volume ${ORADATA}/${CONTAINER_NAME}/diag:/opt/oracle/diag \ --volume ${ORADATA}/${CONTAINER_NAME}/admin:/opt/oracle/admin \ --volume ${ORADATA}/scripts:/scripts \ -p 51521:1521 \ container-registry.oracle.com/database/free:23.4.0.0 docker logs -f ${CONTAINER_NAME}

Slide 46

Slide 46 text

No content

Slide 47

Slide 47 text

www.viscosityna.com @ViscosityNA “Iniciar sesión” en el contenedor docker exec -it ${CONTAINER_NAME} bash

Slide 48

Slide 48 text

No content

Slide 49

Slide 49 text

www.viscosityna.com @ViscosityNA Nombre de host o la dirección IP Puerto mapeado ORACLE_SID localhost 51521 o193 Conéctese a Docker desde SQL Developer

Slide 50

Slide 50 text

www.viscosityna.com @ViscosityNA ¿Por qué esto es mejor?

Slide 51

Slide 51 text

www.viscosityna.com @ViscosityNA Software Configuration Data ¿Que es una base de datos?

Slide 52

Slide 52 text

www.viscosityna.com @ViscosityNA Software Configuration Data ¿Que es una base de datos?

Slide 53

Slide 53 text

www.viscosityna.com @ViscosityNA ├── ORCLCDB │ ├── ORCLPDB1 │ │ ├── … │ ├── control01.ctl │ ├── pdbseed │ │ ├── … │ ├── redo01.log │ ├── redo02.log │ ├── redo03.log │ ├── sysaux01.dbf │ ├── system01.dbf │ ├── temp01.dbf │ ├── undotbs01.dbf │ └── users01.dbf └── dbconfig └── ORCLCDB ├── listener.ora ├── orapwORCLCDB ├── oratab ├── spfileORCLCDB.ora ├── sqlnet.ora └── tnsnames.ora

Slide 54

Slide 54 text

www.viscosityna.com @ViscosityNA ├── ORCLCDB │ ├── ORCLPDB1 │ │ ├── … │ ├── control01.ctl │ ├── pdbseed │ │ ├── … │ ├── redo01.log │ ├── redo02.log │ ├── redo03.log │ ├── sysaux01.dbf │ ├── system01.dbf │ ├── temp01.dbf │ ├── undotbs01.dbf │ └── users01.dbf └── dbconfig └── ORCLCDB ├── listener.ora ├── orapwORCLCDB ├── oratab ├── spfileORCLCDB.ora ├── sqlnet.ora └── tnsnames.ora

Slide 55

Slide 55 text

www.viscosityna.com @ViscosityNA ¿Por que significa?

Slide 56

Slide 56 text

www.viscosityna.com @ViscosityNA Toda la base de datos se guarda en el directorio oradata: ¿Por que significa? • Archivos de datos • Archivios de temp • Registros de redo • Registros de archivar • Con fi guraciones TNS • Carteras • /etc/oratab • p fi le/sp fi le

Slide 57

Slide 57 text

www.viscosityna.com @ViscosityNA Toda la base de datos se guarda en el directorio oradata: ¿Por que significa? • Archivos de datos • Archivios de temp • Registros de redo • Registros de archivar • Con fi guraciones TNS • Carteras • /etc/oratab • p fi le/sp fi le Podemos esos archivos en un directorio local: ${ORADATA}/${CONTAINER_NAME}/data

Slide 58

Slide 58 text

www.viscosityna.com @ViscosityNA Copie los datos antiguos del origen al destino cp -rpT ${ORADATA}/${OLD_CONTAINER}/data \ ${ORADATA}/${NEW_CONTAINER}/data

Slide 59

Slide 59 text

www.viscosityna.com @ViscosityNA ¡Base de datos instantánea! # Crear los nombres de origen/nuevo contenedor: OLD_CONTAINER=${CONTAINER_NAME} NEW_CONTAINER=CLONE # Crear nuevo directorios para auditoría y diagnósticos: for dir in admin data diag do mkdir -p ${ORADATA}/${NEW_CONTAINER}/${dir} done cp -rpT ${ORADATA}/${OLD_CONTAINER}/data \ ${ORADATA}/${NEW_CONTAINER}/data

Slide 60

Slide 60 text

www.viscosityna.com @ViscosityNA ¡Base de datos instantánea! docker run -d \ --name ${NEW_CONTAINER} \ --volume ${ORADATA}/${NEW_CONTAINER}/data:/opt/oracle/oradata \ --volume ${ORADATA}/${NEW_CONTAINER}/diag:/opt/oracle/diag \ --volume ${ORADATA}/${NEW_CONTAINER}/admin:/opt/oracle/admin \ --volume ${ORADATA}/scripts:/scripts \ -p 51522:1521 \ container-registry.oracle.com/database/free:23.4.0.0 docker logs -f ${NEW_CONTAINER}

Slide 61

Slide 61 text

www.viscosityna.com @ViscosityNA Ejecutar en OCI Always Free

Slide 62

Slide 62 text

www.viscosityna.com @ViscosityNA Ejecutar en OCI Always Free • Aprovisionar una instancia de cómputo y: • Siga las instrucciones para instalar en Linux • Instalar Docker o Podman y • Siga las instrucciones para ejecutar en Docker/ Podman • ¡Ser paciente!

Slide 63

Slide 63 text

www.viscosityna.com @ViscosityNA Instalar Podman en Linux # Install podman and other utilities sudo dnf install -y oracle-database-preinstall-23ai \ podman buildah skopeo dnf-utils git # Add podman for opc to sudoers: echo "opc ALL=(ALL) NOPASSWD: /usr/bin/podman" \ | sudo EDITOR='tee -a' visudo # Add aliases for podman and (optionally) docker: echo "alias podman=\"sudo /usr/bin/podman\"" >> /home/opc/.bash_profile echo "alias docker=\"sudo /usr/bin/podman\"" >> /home/opc/.bash_profile

Slide 64

Slide 64 text

www.viscosityna.com @ViscosityNA Preguntas y contactame [email protected] https://linktr.ee/oraclesean

Slide 65

Slide 65 text

No content