Configurazione database
Informazioni sulle impostazioni di configurazione del database per Oracle GoldenGate per Db2 z/OS. Le impostazioni del database sono necessarie per Oracle GoldenGate.
Installa componenti di estrazione su Db2 z/OS
L'estrazione Db2 z/OS di Oracle GoldenGate utilizza oggetti SQL per accedere e leggere il log Db2. Questi oggetti Oracle GoldenGate Db2 z/OS richiedono una piattaforma hardware minima di zEC12, una release minima del sistema operativo di 2.4 e una release minima di Db2 della 12.1. I componenti sono costituiti da moduli di carico eseguibili, procedure e funzioni memorizzate SQL e programmi esterni chiamati tramite le stored procedure. che includono:
-
I programmi autorizzati esterni includono:
-
oggib001– Inizializzazione e programma di utilità -
oggrb001– Funzionalità del programma di lettura dei log -
oggmt001– Programma standalone che monitora ECSA e memoria a 64 bit -
oggjt001– Programma di installazione per l'avvio JCL dioggmt001eseguito dal programmaoggib001 -
oggfr001: utility utilizzata da un DBA sotto la guida di Oracle Support
-
-
I modelli di stored procedure e funzioni SQL sono inclusi nello script SQL
zOS_OGG_Setup_Template.sqlconOGGINITBeOGGREADB SQL. -
Procedura JCL,
oggtask.jcl
Nota: i nomi esterni per i valori dei nomi SQL e JCL sono quelli predefiniti, che è possibile modificare e aggiornare. Questo processo viene discusso nelle sezioni successive.
La figura Replication Process for Db2 z/OS Extract illustra il processo di replica per Db2 z/OS Extract e i relativi componenti mainframe.
Figura 1: Processo di replica per l'estrazione Db2 z/OS

Il processo inizia e viene eseguito come mostrato nella figura precedente, utilizzando i numeri da 1 a 9. Di seguito sono elencati i passaggi seguenti:
-
Extract legge i parametri, inclusi i parametri JCL, dal file dei parametri creato durante l'installazione.
-
Extract riporta le informazioni di avvio e si prepara a scrivere i file trail.
-
ODBC viene utilizzato per raccogliere informazioni dal database Db2 e avviare la replica.
-
La stored procedure SQL
OGGINITBinizia a preparare la memoria condivisa e a raccogliere altri dati necessari per la replica. -
Il programma esterno
OGGIB001richiamato dalla stored procedure SQL avvia il task di monitoraggio della memoria utilizzando il programma di configurazione dei jobOGGJT001. -
L'attività di monitoraggio della memoria
OGGMT001inizia a monitorare la memoria condivisa ECSA e a 64 bit. -
La funzione SQL
OGGREADBchiama il programma esternoOGGRB001. -
Il programma esterno
OGGRB001richiama ripetutamente il programma di lettura del log Db2 per creare un set di risultati che restituisca all'estrazione da 1 a molti buffer di record di log. -
Una volta completato un set di risultati del record di log,
OGGRB001termina dopo l'invio del set di risultati all'estrazione.
L'estrazione ripete i passi da 7 a 9 fino all'arresto o alla cessazione anomala. Se il task di memoria non viene avviato, il programma OGGIB001 restituisce un flag che indica che si è verificato un errore JCL o un problema di impostazione e Extract inizia a gestire la memoria. Se l'attività di memoria si avvia correttamente, l'attività di memoria verifica campi in costante cambiamento nella memoria condivisa ECSA a 48 byte. Questi campi non vengono più modificati se l'estrazione termina per qualsiasi motivo. A quel punto, il gestore della memoria attende se Extract o la rete sono lenti e rilascia la memoria prima di spegnersi dopo un limite di tempo configurato.
Per installare i componenti necessari per Oracle GoldenGate per Db2 z/OS Extract, effettuare le operazioni riportate di seguito.
-
Accertarsi che una libreria (PDSE) sia presente nel sistema Db2 z/OS e assicurarsi che sia presente una voce nell'elenco di librerie autorizzate. Questa libreria è la posizione in cui risiederanno gli oggetti del programma esterno di Oracle GoldenGate.
-
Assicurarsi che una procedura WLM autorizzata da APF faccia riferimento al PDSE dal passo precedente. Oracle consiglia che il valore
NUMTCBper l'ambiente WLM sia compreso tra 10 e 40 per le stored procedure. Il valoreNUMTCBdipende dal numero massimo di estrazioni in esecuzione contemporaneamente nel database e dalla quantità di throughput richiesta da ogni Extract. Se si desidera flessibilità nell'impostazione diNUMTCB, specificarlo nel JCL di avvio per WLM, ma non nel pannello di creazione. -
È possibile impostare la sicurezza per gli ambienti applicativi WLM e per la creazione di stored procedure completando quanto riportato di seguito.
-
(Facoltativo) Specificare quali spazi di indirizzi stabiliti da WLM possono eseguire le stored procedure. Se non si completa questo passaggio, qualsiasi spazio di indirizzi stabilito da WLM può eseguire stored procedure.
-
Concedere agli utenti l'accesso per creare procedure in spazi di indirizzi WLM specifici.
-
Concedere l'accesso utente per creare procedure in schemi specifici. Utilizzare l'istruzione
GRANTcon l'opzioneCREATINper lo schema appropriato. -
Concedere l'accesso utente per creare pacchetti per le procedure in raccolte specifiche. Utilizzare l'istruzione
GRANTcon l'opzioneCREATEper la raccolta appropriata. -
Concedere l'accesso per aggiornare gli ambienti WLM alle persone appropriate.
-
Aggiungere un'autorità RACF aggiuntiva alle persone appropriate, consentendo alle procedure WLM di avviare il job di gestione della memoria.
-
-
Assicurarsi che l'ID utilizzato per eseguire la procedura JCL di avvio WLM disponga dell'autorizzazione per utilizzare RRSAF. Ogni volta che viene avviato uno degli spazi di indirizzi WLM Db2, utilizza RRSAF per collegarsi a Db2. Consultare il documento Db2 12 for z/OS Installation and Migration Guide.
-
Nell'installazione Linux o UNIX di Oracle GoldenGate per Db2 z/OS, esiste un file ZIP situato nella directory di installazione di Oracle GoldenGate denominata
zOSutils.zip, che contiene un file denominatozOSPrograms.zip. DecomprimerezOSPrograms.zipinzOSPrograms.tare copiarezOSPrograms.tarin modalità binaria nel sistema z/OS Db2 in una directory HFS. -
Sul sistema Db2 z/OS in USS o OMVS, spostarsi nella directory contenente
zOSPrograms.tar. -
Ripristinare gli oggetti con il comando:
tar -xovf zOSPrograms.tar. -
Copiare gli oggetti nel PDSE autorizzato. Usare il file
cp -X ogg[irmj][abt][0-9]* "//'authorized_PDSE_name'"doveauthorized_PDSE_nameè il nome del PDSE autorizzato APF, destinato agli oggetti Oracle GoldenGate. L'uso di questo comando determina l'installazione degli oggetti con i nomi predefiniti.Nota: in questo comando, la destinazione di copia è virgolette doppie con virgolette singole autorizzate a virgolette singole.
-Xè una maiuscola X non è una x minuscola. -
L'installazione degli script con nomi diversi consente di essere conformi ai protocolli di sistema oppure di eseguire più versioni di Oracle GoldenGate. Per installare gli script con nomi diversi, si consiglia di creare uno script shell che rinomini i programmi prima di copiarli in PDSE. Un esempio di script shell è dato nel seguente snippet di codice.
#!/bin/bash # Copy new programs renaming them to version 21.12 names. cp oggib001 oggi2112 cp oggrb001 oggr2112 cp oggmt001 oggm2112 cp oggjt001 oggj2112 cp -X oggi2112 "//'SYS4.WLMDSNA.AUTHLOAD'" cp -X oggr2112 "//'SYS4.WLMDSNA.AUTHLOAD'" cp -X oggm2112 "//'SYS4.WLMDSNA.AUTHLOAD'" cp -X oggj2112 "//'SYS4.WLMDSNA.AUTHLOAD'"È possibile eseguire lo script utilizzando il comando
chmod +x scriptname. È possibile copiare e riutilizzare questo script per le nuove versioni. -
È necessario creare le procedure SQL utilizzando lo strumento SQL desiderato in modo che Oracle GoldenGate possa chiamare gli oggetti Extract. Alle stored procedure Oracle GoldenGate deve essere concessa l'autorizzazione solo agli utenti che le utilizzano per la replica.
Un modello di script SQL di esempio nella directory di installazione di Oracle GoldenGate contiene le istruzioni SQL per impostare la stored procedure e la funzione nell'istanza z/OS Db2. Lo script SQL
zOS_OGG_Setup_Template.sqlcontenuto inzOSutils.zipè per Db2 v12.1 e versioni successive e può essere eseguito da qualsiasi strumento SQL su qualsiasi piattaforma in grado di connettersi all'istanza Db2 z/OS. Questo script deve essere eseguito sull'istanza Db2 utilizzata con Extract. Lo script fornito nella directory di installazione remota è in formato ASCII.Modificare la riga seguente prima di eseguire gli script:
- Modificare la riga
WLM ENVIRONMENTper utilizzare il nome corretto per l'ambiente WLM che si utilizzerà per Oracle GoldenGate.
- Modificare la riga
Nota: il nome dello schema oggifi0001 è configurabile utilizzando il parametro Extract TRANLOGOPTIONS REMOTESCHEMA schemaname. I nomi di procedura e funzione, OGGINITB e OGGREADB, nel modello non sono configurabili. È possibile rinominare ogni nome esterno negli script e il PDSE se i nomi degli script e i nomi degli oggetti PDSE corrispondono. La modifica di questi nomi fa parte della procedura che consente la migrazione a nuove versioni o se è necessario rispettare specifiche procedure di denominazione in Db2 z/OS.
La tabella seguente contiene un elenco di controllo dei componenti che è possibile modificare e/o aggiornare:
Elenco di componenti modificabili nella tabella 2
| Componente | Da | Rinomina | Dove |
|---|---|---|---|
oggib001 |
file tar | PDSE autorizzato | |
oggrb001 |
file tar | PDSE autorizzato | |
oggmt001 |
file tar | libreria PDSE e proc autorizzata | |
oggjt001 |
file tar | parametro PDSE ed Extract autorizzato | |
oggpr001 |
file tar | libreria procedure e parametro Extract | |
| proclib | MVS | aggiungere il parametro Extract se necessario | |
| librerie passo | MVS | Libreria delle procedure WLM e oggpr001 |
|
| remoteschema | Parametro zOS_OGG_Setup_Template.sql ed Extract |
||
| Nome WLM | MVS | zOS_OGG_Setup_Template.sql |
|
| programma esterno | zOS_OGG_Setup_Template.sql |
Nota: dopo ogni nuova installazione di patch, eseguire tutti questi passi.
Usa Shared Memory Manager per estrazione
Oracle GoldenGate Extract avvia un task o un job separato da WLM per monitorare l'uso della memoria condivisa. Questo job è un task minimo eseguito in MVS, ma non è un WLM. Il nome utente di questo script che inizia con deve avere le autorizzazioni per l'esecuzione quando si avvia da WLM (in genere si utilizza qualcosa come RACF). Questa memoria condivisa monitorata è costituita da una piccola area ECSA da 48 a 64 byte e da un'area a 64 bit più grande in base alla dimensione del buffer Extract.
I campi specifici della memoria condivisa vengono aggiornati per ogni lettura eseguita da Extract. Questi campi vengono aggiornati indipendentemente dal fatto che lo script restituisca o meno dati. Il monitoraggio controlla questi campi per assicurarsi che Extract non sia diventato inattivo. Se Extract non è attivo, la memoria condivisa viene rilasciata e il monitor termina. È possibile controllare Memory Manager utilizzando il parametro remote_memory_options nel file dei parametri di Extract.
È possibile specificare più parametri secondari per configurare il task di monitoraggio. È possibile configurare l'intervallo di attesa e il tempo di inattività utilizzati dal monitoraggio specificando parametri secondari delle opzioni di memoria remota, come mostrato nell'esempio riportato di seguito.
remote_memory_options wait_interval 2000 inactive_time 01:00
L'intervallo di attesa è espresso in centesimi di secondi nell'esempio e fa sì che il monitor aspetti 20 secondi tra ogni controllo della memoria. Se il monitor ha controllato per 1 ora (formato HH:MM) e Extract è ancora inattivo, il monitor si spegnerà dopo aver rilasciato la memoria condivisa. Se l'estrazione torna a uno stato attivo durante quell'ora, il monitoraggio ne reimposterà lo stato e continuerà il monitoraggio.
Il valore wait_interval può essere compreso tra 100 e 6000 e il valore predefinito è 1000. inactive_time può essere compreso tra le 00:10 e le 12:00 e il valore predefinito è 00:30. Se il monitoraggio non viene avviato correttamente, nel report Estrai viene visualizzato un messaggio di avvertenza e l'estrazione continua l'elaborazione. Extract tenterà di rilasciare la memoria ECSA quando si spegne.
Il parametro della memoria remota dispone di tre opzioni per far funzionare questa funzione. La sintassi per questi parametri è:
-
task_procedure proc name -
task_library proc library -
task_setup task setup program
Esempio:
remote_memory_options task_procedure OGGPR001
remote_memory_options task_library TEST.PROCLIB
remote_memory_options task_setup OGGJT001
È possibile specificare più opzioni in un singolo comando, come mostrato di seguito:
remote_memory_options task_procedure OGGPR001 task_library TEST.PROCLIB task_setup OGGJT001
Nota: i valori per il parametro della memoria remota non fanno distinzione tra maiuscole e minuscole.
I valori predefiniti sono il nome della procedura OGGPR001 e il programma di impostazione dei task OGGJT001. Non è disponibile alcuna impostazione predefinita per la libreria di task in quanto la procedura potrebbe essere installata in una delle librerie di procedure predefinite del sistema MVS. Il parametro relativo alla libreria delle attività è necessario solo se la procedura non si trova in una libreria predefinita del sistema.
Il task di memoria inizierà con una semplice scheda JOB e un nome di procedura EXEC con i parametri passati da Extract. Alcuni sistemi z/OS potrebbero richiedere altri parametri sulla scheda di lavoro. I parametri JOB possono anche essere modificati utilizzando il parametro della memoria remota, come mostrato nell'esempio riportato di seguito.
remote_memory_options task_jobname [valid MVS job name (see below)]
remote_memory_options task_acct_info [valid MVS acct value (see below)]
remote_memory_options task_programmer [valid MVS programmer name, Can use single quotes]
remote_memory_options task_class [valid MVS job class A to Z or 0 to 9]
remote_memory_options task_msgclass [valid MVS msgclass A to Z or 0 to 9]
remote_memory_options task_msglevel [valid MVS message level n or (,n) or (n,n) n=valid digit]
remote_memory_options task_priority [valid MVS priority 0-15]
È possibile specificare il nome JOB utilizzando due caratteri validi e un asterisco, ad esempio AA*. Il nome JOB predefinito è GG*. L'asterisco viene sostituito da sei numeri casuali quando viene specificato. In caso contrario, se si specifica un nome di carattere da uno a otto byte, deve essere un nome di job MVS valido.
Specificare i valori dei conti in uno qualsiasi dei seguenti formati MVS validi:
-
OTXI -
'MY ACCT' -
(ACCT,1234,ABC)
Per i parametri, come acct_info e programmer, che consentono caratteri speciali, racchiuderli tra virgolette singole. Inoltre, le regole MVS sull'utilizzo di virgolette singole doppie o E commerciali all'interno dei preventivi continuano ad essere applicate. L'estrazione esegue una convalida minima per questi parametri e lascia la convalida completa al processo MVS. Extract accetta il primo se si specificano parametri duplicati e si ignorano eventuali duplicati.
Nel file zOSPrograms.zip verrà incluso un file JCL di procedura di esempio. Il presente JCL non sostituisce la procedura WLM. Il monitor, creato nel WLM, utilizza il JCL per essere eseguito in MVS. Una procedura JCL consente maggiore flessibilità se si aggiungono comandi o JCL che supportano l'archiviazione dell'output job o altre procedure.
Nota: durante l'installazione e l'impostazione per il manager memoria, potrebbe essere necessario disattivare temporaneamente il manager memoria quando è necessario attendere i problemi di impostazione RACF, l'uso del responsabile avvio, l'uso della classe mansione o altri problemi simili correlati al manager memoria. Extract opererà nella sua modalità legacy in questa istanza e rilascerà ECSA e la memoria condivisa a 64 bit. L'estrazione mostra il rilascio della memoria condivisa alla fine del report di estrazione.
Oracle non lo consiglia come soluzione permanente. Se utilizzato, l'utente è responsabile del monitoraggio del rilascio di ECSA e della memoria a 64 bit. Il parametro per attivare questa funzione inizia con un carattere di sottolineatura per ricordare all'utente che il sistema è in esecuzione in questa modalità. Altre opzioni di memoria remota possono essere lasciate in posizione e utilizzate rimuovendo l'opzione per disattivare la gestione della memoria. Il parametro di gestione della memoria remota viene attivato per impostazione predefinita ed è specificato come indicato di seguito.
remote_memory_options _remote_memory_on
remote_memory_options _remote_memory_off
Il JCL ha il seguente formato:
//*====================================================================
//* EXAMPLE JCL FOR RUNNING THE COMMON MEMORY MONITOR PROCEDURE
//* ADDRESS SPACE NEEDING AN AUTHORIZED LOAD LIBRARY
//* NOTE: THE PROGRAM OGGMT001 CAN BE RENAMED IN THE LIBRARY BUT THE
//* NEW NAME MUST MATCH THE PROGRAM NAME IN THIS JCL
//*====================================================================
//OGGDSNNA PROC RGN=0K TR=,EX=,MEM=,LEN=,SEC=,DUR=,VER=
//OGGDSNNX EXEC PGM=OGGMT001,REGION=&RGN,TIME=NOLIMIT,
// PARM='&TR &EX &MEM &LEN &SEC &DUR &VER'
//*--------------------------------------------------------------------
//* REPLACE &PREFIX.**.AUTHLOAD LIBRARIES WITH SITE SPECIFIC FILE(S)
//* ALSO REPLACE THE CEE LIBRARY WITH SITE SPECIFIC FILE
//* DSNN COULD REPRESENT A DB2 SPECIFIC LOAD LIBRARY IF ONE EXISTS
//*--------------------------------------------------------------------
//STEPLIB DD DISP=SHR,DSN=&PREFIX..WLMDSNN.USER.AUTHLOAD
// DD DISP=SHR,DSN=CEE.SCEERUN
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
Modificare le librerie contrassegnate con PREFIX in modo che funzionino nel sistema. Se si rinomina il programma OGGMT001 copiato dal file zOSPrograms.tar, è necessario modificarlo in JCL. I parametri nulli nell'istruzione PROC sono disponibili a scopo informativo. Il programma di impostazione del processo OGGJT001 fornisce questi valori utilizzando le informazioni passate dall'estrazione. È inoltre possibile specificare tutti i nomi dei set di dati della libreria di passi necessari. La procedura JCL fornita nel file zOSPrograms.tar fornisce un esempio utilizzando più di una libreria di passi.