Notions de base de base de données Oracle de la rediffusion 12c

La base de données Oracle 12c fonction Replay évolué comme une solution pour la nécessité d'être en mesure de faire des tests d'application réaliste. Avant Database Replay, si vous voulez tester tout type de changements contre la performance ou la charge de travail, vous deviez acheter un outil tiers ou de faire des quantités massives du codage pour simuler une charge de travail.

Sommaire

Dans la plupart des cas, ni méthode était vraiment représentatif de votre charge de travail réelle. En outre, apporter des modifications à un environnement de production sans les tester peut être risqué.

Database Replay est un outil de plus dans votre hangar pour couvrir toutes les bases.

En substance, Database Replay vous permet d'enregistrer votre charge de travail en temps réel, puis rejouez. En outre, vous pourriez jouer contre

  • Une autre base de données

  • Une version différente d'Oracle

  • Un autre OS

Database Replay capte la charge de travail au-dessous du niveau de SQL. La charge de travail est stocké dans des fichiers binaires. Vous pouvez ensuite transférer ces fichiers dans un environnement de test, exécuter la charge de travail, analyser les problèmes, résoudre les problèmes, et de tester à nouveau. La même charge de travail est répétable. En conjonction avec un outil comme base de données Flashback, vous pouvez tester les modifications à plusieurs reprises en succession rapide. Il aide à réduire les chances de quelque chose de rupture lorsque les environnements sont changés.

Database Replay fournit un mécanisme pour aider à ces types de situations:

  • Test

  • Les changements de configuration

  • Mises à niveau

  • Déclassements

  • Changements d'application

  • Mise au point

  • Changements de stockage, de réseau et d'interconnexion

  • Changements de plate-forme

  • Modifications du système d'exploitation

  • Conversion de Real Application Clusters (RAC)

Comment utiliser Oracle Database Replay dans 12c

Voici comment utiliser Database Replay:

  1. Connectez-vous à SQL * Plus en tant qu'utilisateur avec le privilège SYSDBA.

    Oracle nécessite un répertoire dans lequel écrire les fichiers de relecture.

  2. Créez un répertoire à un emplacement sur le système d'exploitation avec beaucoup d'espace:

    Vous voyez ceci:

    Répertoire créé.
  3. Lancer une capture:

    Cet exemple utilise le nom CAPTURE_DEMO.

    Idéalement, vous redémarrez la base de données avant la capture commence afin que vous pouvez éviter d'attraper toutes les transactions dans le milieu. Bien sûr, le faire est pas toujours une option en traitant avec un système de production.

    Vous voyez ceci:

    Procédure PL / SQL terminée avec succès.



  4. Exécutez votre charge de travail.

    Si il est le comportement des applications tout à fait normal, laisser fonctionner pendant la quantité de temps que vous voulez.

  5. Lorsque la charge de travail est terminé ou votre cible de temps a passé, arrêter le processus de capture:

    Vous voyez ceci:

    Procédure PL / SQL terminée avec succès.

Selon la documentation Oracle, la capture d'une charge de travail peut ajouter jusqu'à 4,5 pour cent de la charge de traitement au système ainsi que 64 Ko de mémoire supplémentaire pour chaque session. Futhermore, si l'espace vient à manquer dans le répertoire de capture, la capture arrêtera. Toutes les données saisies jusqu'à ce point seront toujours utiles.

L'idée est que vous allez utiliser votre capture à “ replay ” la charge de travail. Dans notre expérience, la charge de travail est généralement rejoué contre une autre base de données, comme un environnement de test. Cependant, ce n'est pas toujours le cas.

Si votre environnement de base de données est un où de longues fenêtres de maintenance peuvent se produire (comme sur un week-end), vous pourriez vous retrouver à faire ces choses:

  • Activation de la base de données Flashback

  • Création d'un point vendredi matin restaurer

  • Démarrage d'une capture de la charge de travail pendant quatre heures à partir de 8 h à midi

  • Restreindre le système et de créer un autre point de restauration après que les employés rentrent chez eux le vendredi soir

  • Restauration de la base de données pour le point de restauration vendredi matin

  • Déploiement des changements de base de données ou d'application

  • Réécouter votre charge de travail pour tester les changements

  • Clignotant arrière la charge de travail de vendredi soir

  • Déploiement des changements de base de données ou application à prendre effet lorsque les travailleurs reviennent lundi matin

Comment rejouer la charge de travail dans Oracle 12c

Suivez ces étapes pour rejouer la charge de travail:

  1. Créez un répertoire pour les fichiers rediffusion de capture:

    Vous voyez ceci:

    Répertoire créé.

    Cet exemple suppose le replay se déroule sur une autre base de données. Si il est sur la même base de données, il n'y a pas besoin de créer un répertoire et déplacer les fichiers de capture parce qu'ils seront déjà dans l'emplacement correct.

  2. Déplacez les fichiers du répertoire de capture sur le système source dans le répertoire sur le système de relecture.

  3. Commencez le processus de relecture sur la base de données:

    Vous voyez ceci:

    Procédure PL / SQL terminée avec succès.
  4. Initialiser une session de relecture appelé REPLAY_DEMO:

    Vous voyez ceci:

    Procédure PL / SQL terminée avec succès.
  5. Parlez à Oracle pour préparer les fichiers de relecture:

    Vous voyez ceci:

    Procédure PL / SQL terminée avec succès.

    Démarrer clients de relecture, qui sont des processus qui exécutent et gèrent la charge de travail. Ces processus sont lancés à partir de la ligne de commande de l'OS.

  6. L'exemple suivant démarre un client de lecture avec Oracle comme le mot de passe:

    Vous voyez ceci:

    Workload Replay Client: sortie 12.1.0.1.0 - Production sur ven 16 août 22:24:44 2013Copyright (c) 1982, 2013, Oracle et / ou de ses filiales. Tous droits reserved.Wait pour la rediffusion pour commencer (22:24:44)
  7. Parlez à la base de données pour commencer la lecture:

    Vous voyez ceci:

    Procédure PL / SQL terminée avec succès.
  8. Vérifiez sur le statut tandis que la rediffusion fonctionne:

    Fondamentalement, vous interrogez la table de DBA_WORKLOAD_REPLAYS. Vous voyez ce (ou quelque chose comme ça):

ID NOM STATUSDURATION_SECS ---------- -------------------- ----------- ------ ------- 10 REPLAY_DEMO EN COURS 369

Quand tout est fait, vous devriez nettoyer les métadonnées de relecture.

  1. Capturez informations d'identification sur le système source:

    Vous pourriez voir quelque chose comme ceci:

    ID NOM ---------- ----------------------------------- 4 CAPTURE_DEMO
  2. Supprimer les informations de capture:

    Vous voyez ceci:

    Procédure PL / SQL terminée avec succès.
  3. Trouver l'id de relecture sur le système de relecture:

    Vous pourriez voir quelque chose comme ceci:

    ID NOM ---------- ----------------------------------- 10 REPLAY_DEMO
  4. Supprimez les informations Replay:


» » » Notions de base de base de données Oracle de la rediffusion 12c