En af de mest oversete og samtidig mest interessante tabeller i DB2 kataloget er i mine øjne SYSIBM.SYSCOPY. Hver gang der sker en ændring af et tablespace, der har indflydelse på en eventuel senere recovery, så registreres det i SYSCOPY. Det betyder, at enhver image copy kørsel, reorg kørsel, load kørsel og recover kørsel registreres her. Kolonnerne i SYSCOPY er beskrevet i et appendix i SQL reference.
Den vigtigste kolonne er ICTYPE, som indeholder en kode for, hvilken type registrering, der er tale om. Kolonnen TIMESTAMP fortæller, hvornår registreringen fandt sted. Kolonnerne ICDATE og ICTIME indeholder samme information som TIMESTAMP. Sammen med kolonnerne DBNAME og TSNAME (og DSNUM) kan ICTYPE og TIMESTAMP fortælle dig rigtig meget om, hvad der foregår hvornår på dit DB2 system. Mindst lige så vigtigt er det, at man kan finde ud af, hvad der måske mangler at blive udført.
Lad mig nævne nogen praktiske eksempler på brugen af SYSCOPY. Senest har jeg brugt SYSCOPY til at finde ud af, hvem der i tide og utide tømte en DB2-tabel for indhold. Det skte med en LOAD REPLACE med dummy input, som registreres i SYSCOPY. Et andet eksempel er, at du kan finde ud af, om der findes nogen tabeller, der ikke bliver taget IMAGECOPY af. Hvis du har aftalt med din FM leverandør hvordan, hvornår og af hvad der skal foretages reorganiseringer og imagecopies, så er SYSCOPY stedet, hvor du kan følge op på, om det nu også foregår i henhold til aftalerne. Hvis du får brug for at kigge på, hvordan data i en DB2-tabel så ud på et bestemt tidspunkt, så er det i SYSCOPY, du kan finde de nødvendige imagecopies. Når først man har fået øje på mulighederne i SYSCOPY, så er der næsten ingen grænser for, hvad man kan finde af gode informationer i denne tabel.
Træerne vokser desværre ikke ind i himlen. Hvis din installation benytter produkter fra BMC, Computer Associates eller andre tredieparts leverandører, så er det ikke sikkert, at de opdaterer SYSCOPY, når de kører tilsvarende utilities. En anden detalje er, at SYSCOPY med meget stor sandsynlighed kun indeholder data et lille stykke tilbage i tiden. Det afhænger af, hvor tit og hvordan man på din installation afvikler utilitien MODIFY RECOVERY. Denne utility fjerner simpelthen registreringerne fra SYSCOPY ud fra kriterier, som man selv sætter op. Det er typisk driften og/eller DBA, der har bestemt, hvor tit der skal ryddes op.
En glædelig nyhed i version 7 af DB2 er, at SYSCOPY er udvidet med kolonnerne JOBNAME og AUTHID. JOBNAME indeholder navnet på det job, der har afviklet den registrerede utility og AUTHID indeholder user'en, der gjorde det. Før version 7 kunne det godt være ret svært at finde ud af, hvilket job og dermed hvem, der havde udført en utility, men det er nu blevet betydelig lettere.