2017-05-15 5 views
0

Je travaille dans DB2 ZOS Version 10, j'ai travaillé sous projet de masquage de données. Pour ce projet, j'ai exécuté plus de 100 000 instructions DDL (supprimer, mettre à jour, insérer).DB2 ZOS Mainframe- Archive Logs Désactiver

Je dois donc désactiver les journaux de transactions avant le début du processus SCRAMBLE.

Dans DB2 iSeries AS400, je gère déjà le même problème en appelant la procédure qui permet de désactiver TRANSACTION LOG DISABLE.

Comme sage, je dois faire dans DB2 ZOS.

+0

Peut-être pédant, mais delete/update/insert est DML - Data Manipulation Language. DDL est le langage de définition de données, utilisé pour changer la structure de la table. En ce qui concerne la question, je ne sais pas si vous pouvez désactiver la journalisation pour la DML que vous mentionnez. Je suis à peu près sûr que Truncate n'est pas connecté, et je suis à peu près sûr qu'une charge peut être faite sans connexion, mais je ne me souviens pas d'un moyen de désactiver la journalisation autrement. Vous pouvez modifier dans une certaine mesure le nombre de lignes modifiées. – randomScott

+0

@randomscott merci de partager cela. Je vais faire tronquer au lieu de supprimer l'opération. Et connaissez-vous la requête pour trouver les détails du journal d'archivage? –

+0

Notez que truncate supprime toutes les lignes, ce qui peut ne pas être ce que vous voulez. Si c'est ce que vous voulez, c'est probablement plus rapide que supprimer. Il y a probablement des détails sur le journal d'archive dans les tables du catalogue. Il y a aussi des informations sur les retards de journaux et ainsi de suite enregistrés dans les données SMF. Votre meilleur pari est cependant de parler à votre sympathique (espérons-le) DB2 Sysprog qui prend soin de la DB2 en question. – randomScott

Répondre

0

Vous pouvez utiliser l'attribut NOT LOGGED pour tous les tablespaces touchés, précise que les modifications apportées aux données dans le tablespace spécifié ne sont pas enregistrés dans le journal DB2

Procédez comme suit pour vos données processus de masquage:

  1. Prenez un imagecopy afin que vous puissiez récupérer
  2. ALTER TABLESPACE base de données name.table-space-name NOT LOGGED
  3. Execute processus de masquage des données
  4. base de données name.table-espace-nom
  5. LOGGED
  6. ALTER TABLESPACE
  7. Prenez un imagecopy pour établir un point de récupération

Vous voudrez aussi probablement verrouiller toutes les tables avec un accès exclusif de sorte que si vous devez récupérer Personne d'autre n'est touché par vos changements

NB Assurez-vous que vous êtes conscient des implications de récupération pour les objets qui ne sont pas enregistrés!