Fundamentos de la repetición de base de datos Oracle de 12c

La función de reproducción de bases de datos Oracle 12c evolucionado como una solución para la necesidad de ser capaces de hacer las pruebas de aplicaciones realistas. Antes de Replay base de datos, si desea probar cualquier tipo de cambios en contra de rendimiento o carga de trabajo, había que comprar una herramienta de terceros o hacer grandes cantidades de codificación para fingir una carga de trabajo.

En la mayoría de los casos, ninguno de los métodos fue verdaderamente representativo de la carga de trabajo real. Además, de realizar cambios en un entorno de producción sin probarlos puede ser riesgoso.

Replay base de datos es una herramienta más en su cobertizo para cubrir todas las bases.

En esencia, Database Replay le permite grabar su carga de trabajo en tiempo real y luego reproducirlo. Además, usted podría jugar contra

  • Otra base de datos

  • Una versión diferente de Oracle

  • Un sistema operativo diferente

Database Replay captura la carga de trabajo por debajo del nivel de SQL. La carga de trabajo se almacena en archivos binarios. A continuación, puede transferir estos archivos en un entorno de prueba, ejecutar la carga de trabajo, analizar problemas, solucionar problemas y probar de nuevo. La misma carga de trabajo es repetible. En conjunción con una herramienta como Flashback base de datos, puede probar varias veces cambios en rápida sucesión. Ayuda a reducir las posibilidades de que algo de ruptura cuando se cambian los entornos.

Replay base de datos proporciona un mecanismo para ayudar a este tipo de situaciones:

  • Exámenes

  • Los cambios de configuración

  • Actualizaciones

  • Descensos

  • Cambios en las aplicaciones

  • Depuración

  • Cambios de almacenamiento, red y de interconexión

  • Cambios de la plataforma

  • Cambios OS

  • La conversión al Real Application Clusters (RAC)

Cómo utilizar Database Replay en Oracle 12c

Aquí es cómo utilizar Replay Base de datos:

  1. Conéctese a SQL * Plus como un usuario con el privilegio SYSDBA.

    Oracle requiere un directorio en el que escribir los archivos de reproducción.

  2. Crear un directorio a una ubicación en el sistema operativo con un montón de espacio:

    Usted ve esto:

    Directorio creado.
  3. Inicie una captura:

    En este ejemplo se utiliza el nombre CAPTURE_DEMO.

    Lo ideal sería que se reinicie la base de datos antes de la captura comienza de manera que pueda evitar la captura de las transacciones en el medio. Por supuesto, hacerlo no es siempre una opción cuando se trata de un sistema de producción.

    Usted ve esto:

    PL / SQL terminado con éxito.
  4. Ejecute su carga de trabajo.

    Si se trata de un comportamiento simplemente normal aplicación, se deja correr por la cantidad de tiempo que desea.

  5. Cuando la carga de trabajo es completa o su destino ha pasado el tiempo, detener el proceso de captura:

    Usted ve esto:

    PL / SQL terminado con éxito.

De acuerdo con la documentación de Oracle, la captura de una carga de trabajo puede añadir hasta un 4,5 por ciento de la carga de procesamiento del sistema, así como 64 K de sobrecarga de memoria para cada sesión. Futhermore, si el espacio se agota en el directorio de la captura, la captura se detendrá. Todos los datos capturados hasta ese momento aún serán útiles.

La idea es que usted va a utilizar su captura hasta " replay " la carga de trabajo. En nuestra experiencia, la carga de trabajo por lo general se repite contra una base de datos diferente, tal como un entorno de prueba. Sin embargo, este no es siempre el caso.

Si el entorno de base de datos es uno donde pueden producirse largas ventanas de mantenimiento (por ejemplo, durante un fin de semana), es posible que se encuentra haciendo estas cosas:

  • Habilitación de la base de datos Flashback

  • Crear un punto de restauración en la mañana del viernes

  • A partir de una captura de la carga de trabajo durante cuatro horas desde las 8 am hasta el mediodía

  • Restringir el sistema y crear otro punto de restauración después de que los empleados van a casa el viernes por la noche

  • Restauración de la base de datos para el punto de restauración viernes por la mañana

  • Implementación de bases de datos o aplicaciones cambios

  • Reproducción de su carga de trabajo para poner a prueba los cambios

  • Intermitente volver la carga de trabajo para la noche del viernes

  • Implementación de bases de datos o aplicaciones cambios surtan efecto cuando los trabajadores regresan lunes por la mañana

Cómo reproducir la carga de trabajo en Oracle 12c

Siga estos pasos para reproducir la carga de trabajo:

  1. Cree un directorio para los archivos de captura de repetición:

    Usted ve esto:

    Directorio creado.

    Este ejemplo supone la repetición tiene lugar en otra base de datos. Si está en la misma base de datos, no hay necesidad de crear un directorio y mover los archivos de captura porque ya estarán en la ubicación correcta.

  2. Mueva los archivos del directorio de captura en el sistema de origen al directorio en el sistema de repetición.

  3. Comience el proceso de reproducción en la base de datos:

    Usted ve esto:

    PL / SQL terminado con éxito.
  4. Iniciar una sesión de repetición llamada REPLAY_DEMO:

    Usted ve esto:

    PL / SQL terminado con éxito.
  5. Dile a Oracle para preparar los archivos de reproducción:

    Usted ve esto:

    PL / SQL terminado con éxito.

    Empezar clientes de reproducción, cuales son los procesos que se ejecutan y gestionan la carga de trabajo. Estos procesos se inician desde la línea de comandos del sistema operativo.

  6. El ejemplo siguiente inicia un cliente de repetición con Oracle como la contraseña:

    Usted ve esto:

    Carga de trabajo Replay Cliente: Release 12.1.0.1.0 - Producción de vie 16 de agosto 22:24:44 2013Copyright (c) 1982, 2013, Oracle y / o sus filiales. Todo reserved.Wait derechos para la reproducción para iniciar (22:24:44)
  7. Dile a la base de datos para iniciar la reproducción:

    Usted ve esto:

    PL / SQL terminado con éxito.
  8. Compruebe en el estado, mientras que la repetición se ejecuta:

    Básicamente, usted está consultando la tabla DBA_WORKLOAD_REPLAYS. Usted ve esto (o algo parecido):

ID NOMBRE STATUSDURATION_SECS ---------- -------------------- ----------- ------ ------- 10 REPLAY_DEMO EN CURSO 369

Cuando todo está hecho, usted debe limpiar los metadatos de repetición.

  1. Captura de información de identificación en el sistema de origen:

    Es posible que vea algo como esto:

    NOMBRE ID ---------- ----------------------------------- 4 CAPTURE_DEMO
  2. Eliminar la información de captura:

    Usted ve esto:

    PL / SQL terminado con éxito.
  3. Encuentra el id de reproducción en el sistema de repetición:

    Es posible que vea algo como esto:

    NOMBRE ID ---------- ----------------------------------- 10 REPLAY_DEMO
  4. Eliminar la información de reproducción:




» » » Fundamentos de la repetición de base de datos Oracle de 12c