Conceptos para Administradores de Base de Datos

El contenido del script de esta página es sólo para fines de navegación y no modifica el contenido de ninguna forma.

En esta parte se describen las tareas, las herramientas y los conocimientos esenciales para los administradores de bases de datos.

Funciones de los Administradores de Bases de Datos

La responsabilidad principal de un administrador de base de datos (DBA) es poner los datos empresariales a disposición de sus usuarios.

Los DBA deben trabajar estrechamente con los desarrolladores para garantizar que sus aplicaciones hagan un uso eficiente de la base de datos y con los administradores del sistema para garantizar que los recursos físicos sean adecuados y se utilicen de manera eficiente.

Los DBA de Oracle son responsables de comprender la arquitectura de Oracle AI Database y cómo funciona la base de datos. Los DBA pueden esperar realizar las siguientes tareas:

Los tipos de usuarios y sus roles y responsabilidades dependen del entorno de la base de datos. Una base de datos pequeña puede tener un DBA. Una base de datos muy grande puede dividir las tareas del DBA entre varios especialistas, por ejemplo, responsables de seguridad, operadores de copia de seguridad y administradores de aplicaciones.

Consulte además:

Herramientas para administradores de bases de datos

Oracle proporciona varias herramientas para su uso en la administración de una base de datos.

En esta sección, se describen algunas herramientas de uso común.

Oracle Enterprise Manager

Oracle Enterprise Manager (Enterprise Manager) es una herramienta de gestión de sistemas basada en web que proporciona gestión de bases de datos Oracle, máquina de bases de datos Exadata, Fusion Middleware, aplicaciones de Oracle, servidores, almacenamiento y hardware y software que no son de Oracle.

Oracle Enterprise Manager Cloud Control

Oracle Enterprise Manager Cloud Control (Cloud Control) es una interfaz basada en web que proporciona al administrador una supervisión completa de la pila de tecnología de Oracle y de los componentes que no son de Oracle.

A veces, un componente de la notificación rápida de aplicaciones (FAN) puede dejar de estar disponible o experimentar problemas de rendimiento. En este caso, Cloud Control muestra la alerta generada automáticamente para que el administrador pueda realizar la acción de recuperación adecuada.

Los componentes de Cloud Control incluyen:

Consulte además:

Oracle Enterprise Manager Database Express 12c

Oracle Enterprise Manager Database Express (EM Express) es un producto de gestión web integrado en la base de datos Oracle. No requiere ninguna instalación o gestión especial.

EM Express contiene las páginas clave de gestión del rendimiento y administración básicas de Cloud Control. Estas páginas incluyen lo siguiente:

Puede acceder a estas funciones en línea a través de la consola de EM Express y fuera de línea a través de la tecnología Active Reports. Desde el punto de vista arquitectónico, EM Express no tiene componentes de nivel medio ni de middleware, lo que garantiza que la sobrecarga del servidor de base de datos sea insignificante.

Con EM Express, puede realizar tareas administrativas como la gestión de la seguridad del usuario y la gestión de la memoria y el almacenamiento de la base de datos. También puede ver información de rendimiento y estado sobre la base de datos.

Consulte también: Introducción a Oracle AI Database al ajuste de rendimiento para aprender a administrar la base de datos con EM Express

SQL*Plus

SQL*Plus es una herramienta de consulta interactiva y por lotes incluida en cada instalación de Oracle AI Database.

Tiene una interfaz de usuario de línea de comandos que actúa como cliente al conectarse a la base de datos. SQL*Plus tiene sus propios comandos y entorno. Permite introducir y ejecutar comandos SQL, PL/SQL, SQL*Plus y del sistema operativo para realizar tareas como:

Puede utilizar SQL*Plus para generar informes de forma interactiva, para generar informes como procesos por lotes y para colocar los resultados en un archivo de texto, para verlos en pantalla o en un archivo HTML para explorar en Internet. Puede generar informes dinámicamente mediante la utilidad de salida HTML.

Consulte también: Referencia y guía del usuario de SQL*Plus para obtener más información sobre SQL*Plus

Herramientas para la Instalación y Configuración de Bases de Datos

Oracle proporciona varias herramientas para simplificar la tarea de instalar y configurar el software de Oracle AI Database.

En la siguiente tabla, se describen las herramientas admitidas.

Tabla 1 Herramientas para la instalación y configuración de bases de datos

Herramienta Descripción Para saber más
Oracle Universal Installer (OUI) OUI es una utilidad de GUI que permite ver, instalar y desinstalar el software de Oracle AI Database. La ayuda en línea está disponible para guiarle en la instalación. Ayuda en línea para guiarle a través de la instalación
Asistente de Cambio de Versión de Base de Datos (DBUA) DBUA le guía de forma interactiva a través de una actualización de base de datos y configura la base de datos para la nueva versión. DBUA automatiza la actualización realizando todas las tareas que normalmente se realizan manualmente. DBUA realiza recomendaciones para las opciones de configuración, como los tablespaces y el redo log en línea. Oracle AI Database 2 Day DBA para aprender a actualizar una base de datos con DBUA
Asistente de Configuración de Base de Datos (DBCA) DBCA proporciona una interfaz gráfica y un flujo del trabajo guiado para crear y configurar una base de datos. Esta herramienta permite crear una base de datos a partir de plantillas proporcionadas por Oracle o crear su propia base de datos y plantillas. Guía del administrador de Oracle AI Database para aprender a crear una base de datos con DBCA

Herramientas para la Configuración y Administración de Red de Oracle

Oracle Net Services proporciona soluciones en entornos informáticos heterogéneos y distribuidos de conectividad para toda las empresas. Oracle Net, un componente de Oracle Net Services, permite una sesión de red desde una aplicación cliente a una base de datos.

Vd. puede utilizar las siguientes herramientas para configurar y administrar Oracle Net Services:

Consulte además:

Herramientas para el movimiento y análisis de datos

Oracle AI Database incluye varias utilidades para ayudar en el movimiento y análisis de datos.

Por ejemplo, puede utilizar utilidades de base de datos para:

Tabla 2 Tareas de análisis y movimiento de datos

Tarea Para saber más
Cargar datos en tablas de Oracle AI Database desde archivos del sistema operativo "SQL*Loader"
Mover datos y metadatos de una base de datos a otra base de datos "Exportación e Importación de Oracle Data Pump"
Consultar archivos redo log mediante una interfaz SQL "Oracle LogMiner"
Gestionar datos de Oracle AI Database "Intérprete de comandos de ADR (ADRCI)"

Otras tareas incluyen realizar comprobaciones de integridad de la estructura de datos física en una base de datos fuera de línea o un archivo de datos con DBVERIFY, o cambiar el identificador de base de datos (DBID) o el nombre de base de datos para una base de datos operativa mediante la utilidad DBNEWID.

Nota:

Consulte además:

SQL*Loader

SQL*Loader carga datos de archivos externos, denominados archivos de datos (que no se deben confundir con los archivos de datos internos de la base de datos), en tablas de base de datos. Tiene un motor de análisis del dato muy potente que pone poca limitación al formato de los datos en el archivo.

Puede utilizar SQL*Loader para realizar las siguientes acciones:

Una sesión típica de SQL*Loader toma como entrada un archivo de control de SQL*Loader y uno o más archivos de datos. La salida es una base de datos Oracle, un archivo log, un archivo erróneo y, posiblemente, un archivo de desecho. En la siguiente figura se ilustra el flujo de una sesión típica de SQL*Loader.

Figura 1: Sesión de SQL*Loader

Descripción de la ilustración cncpt271.gif

También puede utilizar el modo express de SQL*Loader, que se activa al especificar el parámetro table en el comando de SQL*Loader, como en el siguiente ejemplo:

% sqlldr hr table=employees

No se permite ningún archivo de control, lo que facilita el uso de SQL*Loader. En lugar de analizar un archivo de control, SQL*Loader utiliza las definiciones de columna de tabla para determinar los tipos de dato de entrada. SQL*Loader realiza varias suposiciones por defecto, incluidos el juego de caracteres, los delimitadores de campos y los nombres de los datos, los logs y los archivos incorrectos. Puede sustituir muchos de los valores por defecto con parámetros de línea de comandos.

Consulte además:

Exportación e Importación de Oracle Data Pump

Oracle Data Pump permite el movimiento de alta velocidad de datos y metadatos de una base de datos a otra.

Esta tecnología es la base de las siguientes utilidades de movimiento de datos de Oracle AI Database:

Oracle Data Pump se compone de las siguientes partes distintas:

En la siguiente figura se muestra cómo se integra Oracle Data Pump con SQL*Loader y tablas externas. Como se muestra, SQL*Loader está integrado con la API de tabla externa y la API de pump de datos para cargar datos en tablas externas. Clientes como Oracle Enterprise Manager Cloud Control (Cloud Control) y tablespaces transportables pueden utilizar la infraestructura de Oracle Data Pump.

Figura 2: Arquitectura de Oracle Data Pump

Descripción de la ilustración cncpt261.png

Consulte además:

Oracle LogMiner

Oracle LogMiner permite consultar archivos redo log mediante una interfaz SQL.

Entre los posibles usos de los datos incluidos en los archivos redo log se incluyen:

Se puede acceder a LogMiner mediante una interfaz de línea de comandos o mediante la interfaz gráfica de usuario de Oracle LogMiner Viewer, que forma parte de Enterprise Manager.

Consulte también: Utilidades de Oracle AI Database para obtener más información sobre LogMiner

Intérprete de comandos ADR (ADRCI)

ADRCI es una utilidad de línea de comandos que permite investigar problemas, ver informes de comprobación del sistema y empaquetar y cargar datos de primer fallo en los Servicios de Soporte Oracle.

También puede usar la utilidad para ver los nombres de los archivos de rastreo en el Repositorio de diagnóstico automático (ADR) y para ver el log de alertas. ADRCI tiene un conjunto de comandos enriquecido que puede utilizar de forma interactiva o en secuencias de comandos.

Consulte además:

Temas para administradores de bases de datos

En esta sección, se tratan los temas más esenciales para los administradores de bases de datos y que no se han tratado en ninguna otra parte del manual.

Copia de Seguridad y Recuperación

La copia de seguridad y la recuperación son el juego de conceptos, procedimientos y estrategias implicados en la protección de la base de datos contra la pérdida de datos causada por fallos de medios físicos o errores de usuarios.

Una copia de seguridad es una copia de datos. Una copia de seguridad puede incluir partes cruciales de la base de datos, como archivos de datos, el archivo de parámetros del servidor y el archivo de control. Un escenario de copia de seguridad y recuperación de ejemplo es una unidad de disco fallida que provoca la pérdida de un archivo de datos. Si existe una copia de seguridad del archivo perdido, puede restaurarlo y recuperarlo. Las operaciones implicadas en la restauración de datos a su estado antes de la pérdida se conocen como recuperación de medios.

Esta sección incluye los siguientes temas:

Consulte además:

Técnicas de Copia de Seguridad y Recuperación

Puede utilizar Recovery Manager o técnicas gestionadas por el usuario para realizar copias de seguridad, restaurar y recuperar una base de datos Oracle.

Las principales diferencias entre los dos enfoques son las siguientes:

Consulte además:

Arquitectura de Recovery Manager

Se puede acceder a RMAN y Oracle Secure Backup desde la línea de comandos y desde Enterprise Manager Cloud Control (Cloud Control).

Cloud Control proporciona una utilidad de planificación y front-end gráfica para RMAN. Introduzca parámetros de trabajo y, a continuación, especifique una programación de trabajo. Cloud Control ejecuta RMAN en el momento designado o en el intervalo de repetición designado para realizar las operaciones de copia de seguridad y recuperación. Cloud Control proporciona acceso a RMAN a través de un juego de asistentes. Estos asistentes le guiarán a través de una variedad de procedimientos de recuperación basados en un análisis de la base de datos, las copias de seguridad disponibles y los objetivos de recuperación de datos.

Con Cloud Control, puede realizar los escenarios de restauración y recuperación más sencillos que se describen en esta documentación. También puede utilizar técnicas de recuperación y restauración más sofisticadas, como la recuperación puntual y las operaciones de Oracle Flashback, que permiten una reparación eficaz de fallos de medios físicos y errores de usuario. El uso de Cloud Control suele ser más sencillo que el cliente de línea de comandos de RMAN.

En el siguiente gráfico se muestra un ejemplo de arquitectura de RMAN. El cliente de RMAN, al que se puede acceder mediante Cloud Control, utiliza sesiones de servidor en una base de datos destino para realizar una copia de seguridad de los datos en disco o cinta. RMAN puede actualizar un catálogo de recuperación externo con metadatos de copia de seguridad.

Figura 3: Arquitectura de RMAN

Descripción de la ilustración cncpt318.gif

Independientemente de la técnica de copia de seguridad y recuperación que utilice, Oracle recomienda configurar un área de recuperación rápida. Este directorio, sistema de archivos o grupo de discos de Oracle ASM gestionado por la base de datos centraliza los archivos de copia de seguridad y recuperación, incluidos los archivos de control activos, los archivos redo log en línea y archivados y las copias de seguridad. Los componentes de recuperación de Oracle AI Database interactúan con el área de recuperación rápida para garantizar la capacidad de recuperación de la base de datos.

Consulte además:

Copias de Seguridad de la Base de Datos

Las copias de seguridad de la base de datos pueden ser físicas o lógicas.

Las copias de seguridad físicas, que son la principal preocupación en una estrategia de copia de seguridad y recuperación, son copias de los archivos de la base de datos física. Puede realizar copias de seguridad físicas con RMAN o utilidades del sistema operativo.

Por el contrario, las copias de seguridad lógicas contienen tablas, procedimientos almacenados y otros datos lógicos. Puede extraer datos lógicos con una utilidad de Oracle AI Database, como Data Pump Export, y almacenarlos en un archivo binario. Las copias de seguridad lógicas pueden complementar las copias de seguridad físicas.

Las copias de seguridad físicas tienen granularidad y transportabilidad limitada, pero son muy rápidas. Las copias de seguridad lógicas tienen granularidad fina y transportabilidad completa, pero son más lentas que las copias de seguridad físicas.

Copias de seguridad de bases de datos completas y parciales

Una copia de seguridad de toda la base de datos es una copia de seguridad de todos los archivos de datos de la base de datos, además del archivo de control. Las copias de seguridad de toda la base de datos son el tipo de copia más común.

Una copia de seguridad parcial de la base de datos incluye un subjuego de la base de datos: tablespaces individuales o archivos de datos. Una copia de seguridad de tablespace es una copia de seguridad de todos los archivos de datos de un tablespace o de varios tablespaces. Las copias de seguridad de tablespace, sean consistentes o inconsistentes, solo son válidas si la base de datos funciona en modo ARCHIVELOG porque se necesita redo para que el tablespace restaurado sea consistente con el resto de la base de datos.

Copias de Seguridad Consistentes e Inconsistentes

Una copia de seguridad de toda la base de datos es consistente o inconsistente.

En una copia de seguridad consistente, todos los archivos de datos de lectura/escritura y los archivos de control tienen el mismo punto de control SCN, lo que garantiza que estos archivos contienen todos los cambios hasta este SCN. Este tipo de copia de seguridad no necesita recuperación después de restaurarse.

Una copia de seguridad consistente de la base de datos solo es posible después de un cierre consistente y es la única opción de copia de seguridad válida para una base de datos que funciona en modo NOARCHIVELOG. Otras opciones de copia de seguridad requieren la recuperación del medio físico para conseguir consistencia, lo que no es posible sin aplicar archivos redo log archivados. Nota: Si restaura una copia de seguridad consistente de toda la base de datos sin aplicar redo, perderá todas las transacciones realizadas después de la copia de seguridad.

En una copia de seguridad incoherente, no se garantiza que los archivos de datos de lectura/escritura y los archivos de control tengan el mismo SCN de punto de control, por lo que pueden faltar cambios. Todas las copias de seguridad en línea son necesariamente inconsistentes porque los archivos de datos se pueden modificar mientras se realizan las copias de seguridad.

Las copias de seguridad incoherentes ofrecen una disponibilidad superior porque no tiene que cerrar la base de datos para realizar copias de seguridad que protejan completamente la base de datos. Si la base de datos se ejecuta en modo ARCHIVELOG y realiza una copia de seguridad de los archivos redo log y de datos archivados, las copias de seguridad inconsistentes pueden ser la base de una estrategia de copia de seguridad y recuperación sólida.

Consulte además:

Juegos de Copias de Seguridad y Copias de Imágenes

El comando BACKUP de RMAN genera copias de imagen o juegos de copias de seguridad.

Los tipos de copia de seguridad son distintos de los siguientes:

Consulte también: Guía del usuario de copia de seguridad y recuperación de Oracle AI Database para obtener más información sobre juegos de copias de seguridad y copias de imágenes

Reparación de datos

Si bien varios problemas pueden detener el funcionamiento normal de una base de datos o afectar las operaciones de E/S, solo algunos problemas requieren la intervención del DBA y la reparación de datos.

La reparación de datos suele ser necesaria en los siguientes casos:

Normalmente, tiene varias formas de resolver los problemas anteriores. En esta sección se resumen algunas de estas soluciones.

Consulte además:

Tecnología de Oracle Flashback

Oracle AI Database proporciona un grupo de funciones conocidas como tecnología de Oracle Flashback que soportan la visualización de estados pasados de datos y el enlace de datos en el tiempo, sin necesidad de restaurar copias de seguridad.

Según los cambios de la base de datos, las funciones de flashback a menudo pueden revertir los cambios no deseados más rápidamente y con menos impacto en la disponibilidad que la recuperación de medios físicos. Las siguientes funciones de flashback son las más relevantes para la copia de seguridad y la recuperación:

Consulte además:

Recuperación de medios físicos de bloques

La recuperación de medios físicos de bloque es una técnica para restaurar y recuperar bloques de datos corruptos mientras los archivos de datos están en línea.

Una corrupción de bloques es un bloque de datos que no tiene un formato de Oracle reconocido o cuyo contenido no es coherente internamente. Si detecta corrupciones de bloques y sólo hay unos pocos bloques corruptos, puede que la recuperación de bloques sea preferible a la recuperación de archivos de datos.

Consulte además:

Recuperación de archivos de datos

La recuperación de archivos de datos repara un archivo de datos o un archivo de control actual perdido o dañado. También puede recuperar los cambios perdidos cuando un tablespace se ha desconectado sin la opción OFFLINE NORMAL.

La recuperación de medios físicos es necesaria si restaura una copia de seguridad de un archivo de datos o de control o si un archivo de datos se pone fuera de línea sin la opción OFFLINE NORMAL. La base de datos no se puede abrir si los archivos de datos en línea necesitan recuperación de medios físicos, ni un archivo de datos que necesita recuperación de medios físicos se puede poner en línea hasta que se complete la recuperación de medios físicos.

Restaurar una copia de seguridad física de un archivo de datos o archivo de control consiste en reconstruirlo y ponerlo a disposición de Oracle AI Database. Para recuperar una copia de seguridad, es necesario aplicar archivos redo log archivados para reconstruir los cambios perdidos. RMAN también puede recuperar archivos de datos con copias de seguridad incrementales, que solo contienen bloques de datos modificados después de una copia de seguridad anterior.

A diferencia de la recuperación de instancias, que aplica automáticamente los cambios a los archivos en línea, la recuperación de medios físicos debe ser invocada por un usuario y aplica archivos redo log archivados a las copias de seguridad restauradas. La recuperación de medios físicos de archivos de datos solo puede funcionar en archivos de datos fuera de línea o en archivos de datos de una base de datos que no esté abierta por ninguna instancia de base de datos.

La recuperación del medio físico del archivo de datos difiere según si se aplican todos los cambios:

Consulte además:

Zero Data Loss Recovery Appliance

Zero Data Loss Recovery Appliance a escala de la nube, comúnmente conocido como Recovery Appliance, es un sistema de ingeniería que reduce drásticamente la pérdida de datos y la sobrecarga de copias de seguridad para todas las bases de datos Oracle de la empresa.

La aplicación de recuperación, integrada con RMAN, implementa una estrategia centralizada de copia de seguridad y recuperación para un gran número de bases de datos, utilizando hardware y almacenamiento a escala de la nube y tolerante a fallos. Recovery Appliance valida continuamente las copias de seguridad para la capacidad de recuperación.

Ventajas de Recovery Appliance

Una aplicación de recuperación centralizada realiza la mayoría del procesamiento de copia de seguridad y restauración de la base de datos, lo que hace que la utilización, el rendimiento y la capacidad de gestión del almacenamiento de las copias de seguridad sean más eficientes.

Los beneficios principales son los siguientes:

Entorno de aplicación de recuperación

Una base de datos protegida es una base de datos cliente que realiza copias de seguridad de los datos en una aplicación de recuperación.

En la siguiente figura, se muestra un entorno de ejemplo, que incluye seis bases de datos protegidas y dos dispositivos de recuperación. Cada base de datos utiliza el módulo de copia de seguridad de Zero Data Loss Recovery Appliance (Recovery Appliance Backup Module) para sus copias de seguridad. Este módulo es una biblioteca SBT proporcionada por Oracle que RMAN utiliza para transferir copias de seguridad a través de la red a la aplicación de recuperación.

Figura 4: Entorno de la aplicación de recuperación

Descripción de la ilustración amagd_vm_025.png

La base de datos de metadatos de Recovery Appliance, que reside en cada aplicación de recuperación, gestiona los metadatos almacenados en el catálogo de recuperación. Todas las bases de datos protegidas que envían copias de seguridad a Recovery Appliance deben utilizar este catálogo de recuperación. Las copias de seguridad se encuentran en la ubicación de almacenamiento del dispositivo de recuperación, que es un juego de grupos de discos de Oracle ASM. Nota: Las bases de datos pueden utilizar Recovery Appliance como su catálogo de recuperación sin utilizarlo también como repositorio de copia de seguridad.

Los administradores utilizan Cloud Control para gestionar y supervisar el entorno. Cloud Control proporciona una vista de "panel único" de todo el ciclo de vida de la copia de seguridad de cada base de datos, ya sea que las copias de seguridad residan en disco, cinta u otra aplicación de recuperación.

Gestión de Memoria

La gestión de memoria implica el mantenimiento de tamaños óptimos de las estructuras del recuerdo de las instancias de Oracle según van cambiando las necesidades de uso de la base de datos. La configuración de los parámetros de inicialización determina cómo se gestiona la memoria SGA y PGA de instancia. La Figura 22-5 muestra un árbol de decisiones para las opciones de gestión de memoria. En las siguientes secciones, se explican las opciones en detalle.

Figura 5: Métodos de Gestión de Memoria

Descripción de la ilustración cncpt242.gif

Gestión Automática de Memoria

En la gestión automática de memoria, Oracle AI Database gestiona la memoria PGA de instancia y SGA de forma totalmente automática. Este método es el más sencillo y Oracle recomienda encarecidamente.

Los únicos controles especificados por el usuario son el parámetro de inicialización de tamaño de memoria de destino (MEMORY_TARGET) y el parámetro opcional de inicialización de tamaño de memoria máximo (MEMORY_MAX_TARGET). Oracle AI Database se ajusta al tamaño de memoria de destino, redistribuyendo la memoria según sea necesario entre el SGA y el PGA de instancia.

La SGA puede contener el almacén de columnas en memoria (almacén de columnas de IM) o la agrupación de memoria optimizada, que son opcionales. Independientemente del método de gestión de memoria que utilice, cambie el tamaño del almacén de columnas de IM con el parámetro de inicialización INMEMORY_SIZE y el pool memoptimize con el parámetro de inicialización MEMOPTIMIZE_POOL_SIZE. El tamaño del almacén de columnas de IM es el pool memoptimize que se incluye en el destino de memoria, pero no se gestiona mediante el algoritmo de cambio de tamaño automático. Por ejemplo, si define MEMORY_TARGET en 5 GB y INMEMORY_SIZE en 1 GB, el destino de memoria general será 5 GB (no 6 GB) y INMEMORY_SIZE siempre será 1 GB.

En el siguiente gráfico se muestra una base de datos que a veces procesa trabajos enviados por usuarios en línea y, a veces, por lotes. Mediante la gestión automática de memoria, la base de datos ajusta automáticamente el tamaño de la agrupación grande y la caché de buffers de la base de datos en función del tipo de trabajos que se estén ejecutando. Tenga en cuenta que el gráfico no representa el área de almacenamiento de columnas de IM o memoptimize.

Figura 6: Gestión Automática de Memoria

Descripción de la ilustración cncpt256.gif

Si crea una base de datos con DBCA y selecciona la opción de instalación básica, Oracle AI Database activa la gestión automática de memoria por defecto.

Consulte además:

Gestión de Memoria Compartida de SGA

Puede controlar el tamaño de SGA manualmente, definiendo el tamaño de SGA con la gestión automática de memoria compartida o ajustando manualmente los componentes de SGA.

Si la gestión automática de memoria no está activada, el sistema debe utilizar la gestión de memoria compartida de SGA. La gestión de memoria compartida es posible en cualquiera de las siguientes formas:

Consulte además:

Gestión de Memoria del PGA de Instancia

Si la gestión automática de memoria no está activada, Oracle AI Database utiliza la gestión automática o manual de memoria PGA.

Los siguientes modos son posibles para la gestión de la memoria PGA:

Consulte también: Guía de ajuste de rendimiento de Oracle AI Database para obtener más información sobre la gestión de memoria PGA

Resumen de Métodos de Gestión de Memoria

La gestión de memoria es automática o manual.

Si no activa la gestión automática de memoria, debe configurar por separado un método de gestión de memoria para SGA y otro para PGA. Nota: Cuando la gestión automática de memoria está desactivada para la instancia de base de datos en su conjunto, Oracle Database activa la gestión automática de memoria PGA por defecto.

En la siguiente tabla se incluyen el parámetro de inicialización INMEMORY_SIZE y el parámetro de inicialización MEMOPTIMIZE_POOL_SIZE. Ambas áreas de memoria de control son opcionales.

Tabla 3 Métodos de gestión de memoria

Instancia SGA PGA Descripción Parámetros de Inicialización
Automático n/d n/d La base de datos ajusta el tamaño de la instancia en función de un tamaño de destino de instancia única.

Ha definido:

  • Tamaño total de destino de memoria para la instancia de base de datos (MEMORY_TARGET)

  • Tamaño máximo de memoria opcional para la instancia de base de datos (MEMORY_MAX_TARGET)

  • Tamaño opcional para el almacén de columnas de IM (INMEMORY_SIZE) en SGA

n/d Automático Automático

La base de datos ajusta automáticamente el SGA según un destino de SGA.

La base de datos ajusta automáticamente la PGA según un destino de PGA.

Ha definido:

  • Tamaño del Destino de SGA (SGA_TARGET)

  • Tamaño máximo de SGA opcional (SGA_MAX_SIZE)

  • Tamaño opcional para el almacén de columnas de IM (INMEMORY_SIZE) en SGA

  • Tamaño opcional para el pool memoptimize en SGA (MEMOPTIMIZE_POOL_SIZE)

  • Tamaño de destino agregado de PGA (PGA_AGGREGATE_TARGET)Punto 1

La base de datos configura automáticamente el parámetro de inicialización PGA_AGGREGATE_LIMIT. Puede definir este parámetro manualmente.

n/d Automático Manual

La base de datos ajusta automáticamente el SGA según un destino de SGA.

Puede controlar la PGA manualmente, definiendo el tamaño máximo del área de trabajo para cada tipo de operador SQL.

Ha definido:

  • Tamaño del Destino de SGA (SGA_TARGET)

  • Tamaño máximo de SGA opcional (SGA_MAX_SIZE)

  • Tamaño opcional para el almacén de columnas de IM en SGA (INMEMORY_SIZE)

  • Tamaño opcional para el pool memoptimize en SGA (MEMOPTIMIZE_POOL_SIZE)

  • Parámetros del área de trabajo de PGA, como SORT_AREA_SIZE, HASH_AREA_SIZE y BITMAP_MERGE_AREA_SIZE

n/d Manual Automático

El SGA se controla manualmente definiendo tamaños de componentes individuales.

La base de datos ajusta automáticamente la PGA según un destino de PGA.

Ha definido:

  • Tamaño de pool compartido (SHARED_POOL_SIZE)

  • Tamaño de caché de buffers (DB_CACHE_SIZE)

  • Tamaño de pool grande (LARGE_POOL_SIZE)

  • Tamaño de pool Java (JAVA_POOL_SIZE)

  • Tamaño opcional para el almacén de columnas de IM (INMEMORY_SIZE) en SGA

  • Tamaño opcional para el pool memoptimize en SGA (MEMOPTIMIZE_POOL_SIZE)

  • Tamaño de destino agregado de PGA (PGA_AGGREGATE_TARGET)Punto 2

La base de datos configura automáticamente el parámetro de inicialización PGA_AGGREGATE_LIMIT. Puede definir este parámetro manualmente.

n/d Manual Manual

Debe configurar manualmente los tamaños de los componentes SGA.

Puede controlar la PGA manualmente, definiendo el tamaño máximo del área de trabajo para cada tipo de operador SQL.

Debe configurar manualmente los tamaños de los componentes SGA. Ha definido:

  • Tamaño de pool compartido (SHARED_POOL_SIZE)

  • Tamaño de caché de buffers (DB_CACHE_SIZE)

  • Tamaño de pool grande (LARGE_POOL_SIZE)

  • Tamaño de pool Java (JAVA_POOL_SIZE)

  • Tamaño opcional para el almacén de columnas de IM (INMEMORY_SIZE) en SGA

  • Tamaño opcional para el pool memoptimize en SGA (MEMOPTIMIZE_POOL_SIZE)

  • Parámetros del área de trabajo de PGA, como SORT_AREA_SIZE, HASH_AREA_SIZE y BITMAP_MERGE_AREA_SIZE

Nota a Pie de Página 1

La base de datos configura automáticamente el parámetro de inicialización PGA_AGGREGATE_LIMIT. También puede definir este parámetro manualmente.

Nota a Pie de Página 2

La base de datos configura automáticamente el parámetro de inicialización PGA_AGGREGATE_LIMIT. También puede definir este parámetro manualmente.

Consulte también: Guía del administrador de Oracle AI Database porque la gestión automática de memoria no está disponible en todas las plataformas

Programación de tareas y Resource Management

Oracle AI Database proporciona herramientas para ayudarle con la gestión de recursos y la programación de tareas para reducir el impacto en los usuarios.

En una base de datos con muchos usuarios activos, la gestión de recursos es una parte importante de la administración de la base de datos. Las sesiones que consumen recursos excesivos pueden impedir que otras sesiones realicen su trabajo. Un problema relacionado es cómo programar tareas para que se ejecuten en el mejor momento. Oracle AI Database proporciona herramientas para ayudar a resolver estos problemas.

Gestor de Recursos de la Base de Datos

Oracle AI Database Resource Manager (el gestor de recursos) proporciona un control granular de los recursos de base de datos asignados a cuentas de usuario, aplicaciones y servicios. El gestor de recursos actúa principalmente como gatekeeper, lo que ralentiza la ejecución de algunos trabajos para que otros se puedan ejecutar rápidamente.

El paquete PL/SQL DBMS_RESOURCE_MANAGER resuelve muchos problemas de asignación de recursos que un sistema operativo no gestiona bien, incluidos:

El gestor de recursos ayuda a superar los problemas anteriores al proporcionar a la base de datos más control sobre la asignación de recursos de hardware y la priorización del trabajo dentro de la base de datos. Puede clasificar las sesiones en grupos en función de los atributos de sesión y, a continuación, asignar recursos a estos grupos para optimizar el uso de hardware. Puede utilizar Resource Manager para definir límites para el consumo de memoria de PDB.

Los recursos se asignan a los usuarios según un plan de recursos especificado por el administrador de la base de datos. El plan especifica cómo se distribuirán los recursos entre los grupos de consumidores de recursos, que son sesiones de usuario agrupadas por requisitos de recursos. Una directiva de plan de recursos asocia un grupo de consumidores de recursos con un plan y especifica cómo se asignarán los recursos al grupo. La Figura 22-7 muestra un plan de recursos simple para una organización que ejecuta aplicaciones OLTP y aplicaciones de informes simultáneamente durante el día. El plan activo actualmente, DAYTIME, asigna recursos de CPU entre tres grupos de consumidores de recursos. En concreto, a OLTP se le asigna el 75% del tiempo de CPU, a REPORTS se le asigna el 15% y a OTHER_GROUPS se le asigna el 10% restante.

Figura 7: Plan de recursos simple

Descripción de la ilustración admin078.gif

Un problema que Resource Manager puede resolver son las consultas sin control, que se pueden supervisar mediante SQL Monitor. Resource Manager le permite especificar umbrales para identificar y responder a sentencias SQL sin control. Por ejemplo, puede especificar umbrales para el tiempo de CPU, el tiempo transcurrido, las E/S físicas o lógicas y el uso de PGA por cada proceso en primer plano en un grupo de consumidores. En respuesta, Resource Manager puede cambiar a un grupo de consumidores de menor prioridad, terminar la sentencia SQL o registrar la infracción de umbral.

Consulte además:

Gestión de CPU

A partir de Oracle AI Database 26ai, Oracle ofrece un método alternativo para la gestión de recursos de CPU, que funciona en todas las instancias de base de datos del servidor.

En versiones anteriores, Oracle ofrecía un método de gestión de recursos de CPU, que funcionaba dentro de una instancia de base de datos. A partir de Oracle AI Database 26ai, puede definir RESOURCE_MANAGER_CPU_SCOPE para controlar el ámbito de la gestión de recursos de CPU. Este parámetro permite elegir entre los dos métodos de control.

La definición de RESOURCE_MANAGER_CPU_SCOPE en SERVER_WIDE permite la gestión de recursos de CPU entre instancias en el nivel de servidor. Introducido en Oracle AI Database 26ai, este método se puede utilizar cuando varias instancias de base de datos comparten un servidor Linux. Permite la gestión de recursos de CPU en todas las instancias de base de datos del servidor. Con este método, Oracle configura automáticamente los grupos de control de Linux (cgroups) con los límites de uso compartido y uso de CPU deseados y, a continuación, coloca las sesiones de base de datos en los cgroups adecuados.

RESOURCE_MANAGER_CPU_SCOPE se define en INSTANCE_ONLY por defecto.

Consulte además:

Oracle Scheduler

Oracle Scheduler (el planificador) permite a las administradores y a las desarrolladoras de aplicaciones controlar cuándo y dónde se realizan distintas tareas en el entorno de la base de Datos.

Scheduler proporciona una funcionalidad de programación empresarial compleja, que puede utilizar para:

Los objetos de programa (programas) contienen metadatos sobre el comando que ejecutará el programador, incluidos los valores por defecto para cualquier argumento. Los objetos de programación (programas) contienen información sobre la fecha y hora de ejecución y los patrones de recurrencia. Los objetos de trabajo (trabajos) asocian un programa a un programa. Para definir qué se ejecuta y cuándo, se asignan relaciones entre programas, programas y trabajos.

El planificador se implementa como un juego de funciones y procedimientos en el paquete PL/SQL DBMS_SCHEDULER. Puede crear y manipular objetos del planificador con este paquete o con Enterprise Manager. Puesto que los objetos del programador son objetos de base de datos estándar, puede controlar el acceso a ellos con privilegios de sistema y objeto. La Figura 22-8 muestra la arquitectura básica del planificador. La tabla de trabajos es un contenedor para todos los trabajos, con una tabla por base de datos. El proceso en segundo plano del coordinador de trabajos se inicia y se detiene automáticamente según sea necesario. El coordinador activa los procesos secundarios del trabajo cuando se debe ejecutar un trabajo. Los procesos secundarios recopilan metadatos de la tabla de trabajos y ejecutan el trabajo.

Figura 8: Componentes del Planificador

Descripción de la ilustración admin062.gif

Consulte además:

Rendimiento y Ajuste

Como administrador de bases de datos (DBA), es responsable del rendimiento de su base de datos de Oracle. Normalmente, los problemas de rendimiento son el resultado de un tiempo de respuesta inaceptable, que es el tiempo que se tarda en completar una carga de trabajo específica, o el rendimiento, que es la cantidad de trabajo que se puede realizar en un tiempo especificado.

Los problemas típicos incluyen:

El objetivo general del ajuste suele ser mejorar el tiempo de respuesta, aumentar el rendimiento o ambos. Un objetivo específico y medible podría ser "Reducir el tiempo de respuesta de la sentencia SELECT especificada a menos de 5 segundos". Si este objetivo es alcanzable depende de factores que pueden o no estar bajo el control del DBA. En general, el ajuste es el esfuerzo por lograr objetivos de ajuste específicos, medibles y alcanzables mediante el uso de recursos de base de datos de la forma más eficiente posible.

El método de rendimiento de Oracle se basa en identificar y eliminar cuellos de botella en la base de datos y en desarrollar sentencias SQL eficientes. La aplicación del método de desempeño de Oracle implica las siguientes tareas:

En esta sección se describen los aspectos esenciales del ajuste del rendimiento de Oracle AI Database, incluido el uso de asesores. Los asesores de Oracle AI Database ofrecen asesoramiento específico sobre el modo de hacer frente a las principales dificultades en la administración de bases de datos mediante información sobre distintas áreas, como el espacio, el rendimiento y la administración de deshacer.

Supervisión Automática de Base de Datos

La supervisión automática se realiza a medida que la base de datos realiza su operación normal, lo que garantiza que la base de datos tenga en cuenta los problemas a medida que surgen. Oracle AI Database puede enviar una alerta generada por el servidor para notificarle de un problema inminente.

Las alertas se generan automáticamente cuando se produce un problema o cuando los datos no coinciden con los valores esperados para métricas como lecturas físicas por segundo o tiempo de respuesta SQL. Una métrica es el ratio de cambio en una estadística acumulativa. Las alertas generadas por el servidor se pueden basar en niveles de umbral especificados por el usuario o porque se ha producido un evento.

Las alertas generadas por el servidor no solo identifican el problema, sino que a veces recomiendan cómo se puede resolver el problema informado. Un ejemplo es una alerta de que el área de recuperación rápida se está quedando sin espacio con la recomendación de que se supriman las copias de seguridad obsoletas o de que se agregue más espacio en disco.

Consulte también: Guía del administrador de Oracle AI Database

Repositorio de carga de trabajo automática (AWR)

Repositorio de Carga de Trabajo Automática (AWR) es un repositorio de datos de rendimiento históricos que incluye estadísticas acumulativas para el sistema, sesiones, sentencias SQL individuales, segmentos y servicios.

Las estadísticas de AWR son la base del ajuste de rendimiento. Mediante la automatización de la recopilación de estadísticas de la base de datos para la detección y el ajuste de problemas, AWR sirve de base para la autogestión de la base de datos.

Como se muestra en el siguiente gráfico, la base de datos almacena estadísticas de AWR recientes en SGA. Por defecto, el proceso MMON recopila estadísticas cada hora y crea una instantánea de AWR. Una instantánea de AWR es un juego de estadísticas de rendimiento capturadas en un momento específico. La base de datos escribe instantáneas en el tablespace SYSAUX. AWR gestiona el espacio de instantáneas, depurando instantáneas antiguas según una política de retención de instantáneas configurable.

Figura 9: Repositorio de Carga de Trabajo Automática (AWR)

Descripción de la ilustración cncpt279.gif

Una base de AWR es una recopilación de tasas de estadística que generalmente se toman durante un período en el que el sistema está funcionando bien en la carga máxima. Puede especificar un par o un rango de instantáneas de AWR como línea base. Mediante el uso de un informe de AWR para comparar las estadísticas capturadas durante un período de mal rendimiento con una línea base, puede diagnosticar problemas.

Una infraestructura de mantenimiento automatizada conocida como AutoTask ilustra cómo Oracle Database utiliza AWR para la autogestión. Mediante el análisis de datos de AWR, AutoTask puede determinar la necesidad de tareas de mantenimiento y planificarlas para que se ejecuten en ventanas de mantenimiento de Oracle Scheduler. Algunos ejemplos de tareas incluyen la recopilación de estadísticas para el optimizador y la ejecución del Asesor de Segmentos Automático.

Consulte además:

Monitor de base de datos automático (ADDM)

Mediante el uso de estadísticas capturadas en AWR (Repositorio de Carga de Trabajo Automática), ADDM diagnostica de forma automática y proactiva el rendimiento de la base de datos y determina cómo se pueden resolver los problemas identificados. Asimismo, puede ejecutar ADDM de forma manual. El Monitor de Diagnóstico de Base de Datos Automático (ADDM) es un asesor automático incorporado en Oracle Database.

ADDM adopta un enfoque holístico para el rendimiento del sistema, utilizando el tiempo como moneda común entre los componentes. ADDM identifica las áreas de Oracle Database que más tiempo consumen. Por ejemplo, la base de datos puede estar pasando una cantidad excesiva de tiempo esperando buffers de base de datos libres. ADDM profundiza para identificar la causa raíz de los problemas, en lugar de solo los síntomas, e informa el efecto del problema en Oracle Database en general. La sobrecarga mínima se produce durante el proceso.

En muchos casos, ADDM recomienda soluciones y cuantifica los beneficios de rendimiento esperados. Por ejemplo, ADDM puede recomendar cambios en hardware, configuración de base de datos, esquema de base de datos o aplicaciones. Si se realiza una recomendación, ADDM informa de la ventaja de tiempo. El uso del tiempo como medida permite comparar problemas o recomendaciones.

Además de informar posibles problemas de rendimiento, ADDM documenta áreas de la base de datos que no son problemas. Los subcomponentes, como la E/S y la memoria, que no afectan significativamente al rendimiento de la base de datos, se eliminan del árbol de clasificación en una etapa temprana. ADDM muestra estos subcomponentes para que pueda ver rápidamente que hay pocas ventajas de realizar acciones en esas áreas.

Consulte también: Oracle AI Database Get Started with Performance Tuning y Oracle AI Database Performance Tuning Guide

Historial de sesiones activas (ASH)

El historial de sesiones activas (ASH) muestra sesiones de base de datos activas cada segundo, escribiendo los datos en la memoria y el almacenamiento persistente. El ASH es una parte integral del marco para la gestión automática de la base de datos y es útil para diagnosticar problemas de rendimiento.

A diferencia de las estadísticas de nivel de instancia recopiladas por el repositorio de carga de trabajo automática (AWR), la base de datos recopila estadísticas de ASH en el nivel de sesión. Una sesión activa es una sesión que utiliza CPU y no está esperando un evento en la clase de espera inactiva.

Puede utilizar scripts SQL o de Enterprise Manager para generar informes ASH que recopilen estadísticas de sesión recopiladas durante una duración especificada. Puede utilizar informes ASH para:

Por ejemplo, un usuario le notifica que la base de datos era lenta entre las 10:00 p.m. y las 10:02 p.m. Sin embargo, la degradación del rendimiento de 2 minutos representa una pequeña parte del intervalo de instantánea de AWR de las 10:00 p.m. y las 11:00 p.m. y no aparece en las conclusiones de ADDM. Los informes ASH pueden ayudar a identificar el origen del problema transitorio.

Consulte también: Oracle AI Database Get Started with Performance Tuning y Oracle AI Database Performance Tuning Guide

Ajuste de Aplicación y SQL

Oracle Database automatiza completamente el proceso de ajuste SQL.

ADDM identifica sentencias SQL que consumen recursos del sistema inusualmente altos y, por lo tanto, causan problemas de rendimiento. Además, AWR captura automáticamente las sentencias SQL principales en términos de consumo de CPU y memoria compartida. La identificación de sentencias SQL de carga alta se produce automáticamente y no requiere intervención.

Sentencia EXPLAIN PLAN

Herramientas como la sentencia EXPLAIN PLAN permiten ver los planes de ejecución seleccionados por el optimizador.

EXPLAIN PLAN muestra el plan de consulta para la consulta SQL especificada si se ha ejecutado ahora en la sesión actual. Otras herramientas son Oracle Enterprise Manager y el comando AUTOTRACE de SQL*Plus.

Consulte también: Referencia de lenguaje SQL de Oracle AI Database para obtener más información sobre EXPLAIN PLAN

Asesor de estadísticas del optimizador

Optimizer Statistics Advisor es un software de diagnóstico que analiza cómo está recopilando estadísticas actualmente, la eficacia de los trabajos de recopilación de estadísticas existentes y la calidad de las estadísticas recopiladas. El Asesor de Estadísticas del Optimizador utiliza el mismo marco de asesor que el Monitor de Diagnóstico de Base de Datos Automático (ADDM), SQL Performance Analyzer y otros asesores.

El Asesor de Estadísticas del Optimizador proporciona las siguientes ventajas con respecto al enfoque tradicional, que se basa en las mejores prácticas:

El asesor de estadísticas del optimizador mantiene reglas, que son estándares proporcionados por Oracle mediante los cuales el asesor realiza sus comprobaciones. Las reglas incorporan las mejores prácticas de Oracle basadas en el juego de funciones actual. Si las mejores prácticas cambian de una versión a otra, también cambian las reglas del asesor de estadísticas del optimizador. De esta manera, el asesor siempre proporciona las recomendaciones más actualizadas.

El asesor de estadísticas del optimizador inspecciona el proceso de recopilación de estadísticas y, a continuación, genera un informe de conclusiones, que son violaciones de las reglas. Si el asesor realiza recomendaciones y propone acciones basadas en estas recomendaciones, puede implantar las acciones automáticamente o generar un script PL/SQL ejecutable y editable.

La tarea de asesor se ejecuta automáticamente en la ventana de mantenimiento, pero también puede ejecutarla bajo demanda.

Consulte además:

Asesor de Ajustes SQL

La interfaz para el ajuste SQL automático es el Asesor de Ajustes SQL, que se ejecuta automáticamente durante las ventanas de mantenimiento del sistema como tarea de mantenimiento.

Durante cada ejecución automática, el asesor selecciona consultas SQL de carga alta en la base de datos y genera recomendaciones para ajustar estas consultas.

Las recomendaciones del Asesor de Ajustes SQL se dividen en las siguientes categorías:

Un perfil SQL contiene estadísticas adicionales específicas de una sentencia SQL y permite al optimizador generar un plan de ejecución mejor. Básicamente, un perfil SQL es un método para analizar una consulta. Tanto el análisis de la estructura SQL como la ruta de acceso son útiles para ajustar una aplicación en desarrollo o una aplicación de producción propia.

Una de las principales ventajas del Asesor de Ajustes SQL es que las soluciones proceden del optimizador en lugar de las herramientas externas. Por lo tanto, el ajuste lo realiza el componente de base de datos que es responsable de los planes de ejecución y el rendimiento SQL. El proceso de ajuste puede tener en cuenta las estadísticas de ejecución anteriores de una sentencia SQL y personaliza los valores del optimizador para esta sentencia.

Consulte además:

Asesor de Acceso SQL

Utilizar el Asesor de Acceso SQL para ayudarle a analizar consultas SQL y determinar formas de optimizar objetos de esquema o ajustar consultas.

El Asesor de Acceso SQL ofrece consejos sobre cómo optimizar las rutas de acceso a los datos. Concretamente, recomienda cómo se puede mejorar el rendimiento de la base de datos mediante la partición, las vistas materializadas, los índices y los logs de vistas materializadas.

Los objetos de esquema, como las particiones y los índices, son esenciales para optimizar consultas complejas que hacen un uso intensivo de los datos. Sin embargo, la creación y el mantenimiento de estos objetos pueden tardar bastante tiempo y los requisitos de espacio pueden ser significativos. El Asesor de Acceso SQL ayuda a cumplir los objetivos de rendimiento recomendando estructuras de datos para una carga de trabajo especificada.

Puede ejecutar el Asesor de Acceso SQL desde Enterprise Manager mediante un asistente o mediante el paquete DBMS_ADVISOR. DBMS_ADVISOR consta de una recopilación de funciones y procedimientos de análisis y asesoramiento que se pueden llamar desde cualquier programa PL/SQL.

Consulte también: Oracle AI Database Get Started with Performance Tuning y Oracle AI Database SQL Tuning Guide

Gestión de planes SQL

Gestione los planes de ejecución SQL mediante la gestión de planes SQL para llevar a cabo solo los planes probados y verificados.

Por defecto, el Asesor de Evolución de Gestión de Planes SQL (SPM) se ejecuta diariamente en la ventana de mantenimiento programado, clasifica todos los planes no aceptados y realiza ejecuciones de prueba de tantos planes como sea posible. El Asesor de Evolución de SPM selecciona el plan aceptado de menor costo en la línea base del plan SQL para comparar con cada plan no aceptado. Si el plan no aceptado funciona lo suficientemente mejor que el plan aceptado existente, el asesor lo acepta.

El SPM de alta frecuencia, cuando está activado, ejecutará el Asesor de Evolución de SPM en una tarea periódica en segundo plano fuera de la ventana de mantenimiento para permitir mejoras de rendimiento más oportunas. La tarea de alta frecuencia identificará las sentencias SQL que utilizan recursos significativos del sistema y comprobará si un plan de ejecución SQL utilizado anteriormente funciona mejor. Si este es el caso, se creará una nueva línea base de plan SQL para aplicar el plan de ejecución SQL anterior y reparar la regresión de rendimiento SQL.

A partir de Oracle Database 26ai, si está activado, el SPM en tiempo real iniciará el análisis de rendimiento inmediatamente si una sentencia SQL utiliza un nuevo plan de ejecución SQL. Si un plan de ejecución SQL previamente visto funciona mejor, se creará inmediatamente una nueva línea base de plan SQL sin depender de una tarea en segundo plano para ello.

Consulte además: