Test dei carichi di lavoro con Oracle Real Application Testing
Oracle Real Application Testing è una soluzione di gestione delle prestazioni proattiva estremamente conveniente e facile da usare che consente di valutare completamente il risultato di una modifica del sistema in fase di test o produzione.
- Informazioni su Oracle Real Application Testing
È possibile utilizzare Oracle Real Application Testing per acquisire un carico e ripeterlo in un sistema a test con le stesse caratteristiche,in termini di tempificazione, accesso concorrente e transazioni, del carico del lavoro originale. - Carichi di lavoro Acquisisci e ripeti tra database autonomi
Puoi acquisire e ripetere da un'istanza di Autonomous Database in un'altra istanza di Autonomous Database. - Carichi di lavoro Acquisisci e ripeti tra database non autonomi e autonomi
Puoi acquisire e riprodurre da un'istanza non Autonomous Database in un'istanza di Autonomous Database. - Test dei carichi di lavoro rispetto a una patch imminente
Utilizzando la funzione di ripetizione automatica del carico di lavoro è possibile acquisire automaticamente un carico di lavoro da un database di produzione che si trova a livello di patch normale e ripetere il carico di lavoro su una copia aggiornabile di destinazione che si trova a livello di patch iniziale.
Argomento padre: Sviluppa
Informazioni su Oracle Real Application Testing
È possibile usare Oracle Real Application Testing per acquisire un carico e ripeterlo in un sistema a livello di test con le stesse caratteristiche, in termini da tempificazione, accesso concorrente e transazioni, del peso di lavoro originale.
Oracle Real Application Testing fornisce un metodo accurato per testare l'impatto di una vasta gamma di modifiche al sistema e consente di eseguire le seguenti attività:
-
È possibile testare gli effetti di una modifica di sistema su un carico di lavoro senza influire sul sistema di produzione.
-
È possibile acquisire un carico di lavoro in un sistema di produzione e simulare lo stesso carico di lavoro in un sistema di test.
Puoi utilizzare Oracle Database Replay per acquisire un carico di lavoro da un'istanza di Autonomous Database o da un database on-premise o da qualsiasi altro database di servizi cloud e ripetere il carico di lavoro su Autonomous Database. Ciò consente di confrontare il modo in cui un carico di lavoro viene eseguito su un Autonomous Database con un altro Autonomous Database, un database on premise o un altro database del servizio cloud.
Real Application Testing consente di eseguire una delle seguenti azioni di Capture-Replay:
Opzione replica acquisizione | Descrizione |
---|---|
Carichi di lavoro Capture-Replay tra database autonomi. |
Per ulteriori informazioni, vedere Acquisisci e ripeti carichi di lavoro tra database autonomi. |
Acquisisci il carico di lavoro da Autonomous Database Oracle Database 19c e ripeti su Autonomous Database con Oracle Database 23ai |
Questa funzione Capture-Replay consente di acquisire un carico di lavoro su un Autonomous Database con Oracle Database 19c e di eseguire la replica su un Autonomous Database con Oracle Database 23ai. Per ulteriori informazioni, vedere Eseguire il test dei carichi di lavoro 19c su una copia aggiornabile 23ai con Capture-Replay. |
Acquisisci un carico di lavoro da un non Autonomous Database e ripeti su Autonomous Database. |
Per ulteriori informazioni, consulta la sezione Carichi di lavoro Acquisisci e ripeti tra database non autonomi e Autonomous. |
Acquisisci un carico di lavoro da un Autonomous Database di produzione e ripetilo su un Autonomous Database di destinazione a un livello di patch diverso (dopo l'applicazione di una patch all'Autonomous Database di destinazione). |
Per ulteriori informazioni, vedere Test dei carichi di lavoro rispetto a una patch imminente. |
Argomento padre: Test dei carichi di lavoro con Oracle Real Application Testing
Acquisisci-ripeti carichi di lavoro tra database autonomi
Puoi acquisire e ripetere da un'istanza di Autonomous Database in un'altra istanza di Autonomous Database.
Ciò consente di confrontare i carichi di lavoro tra diverse istanze di Autonomous Database. Queste istanze di Autonomous Database possono variare a livello di patch, versioni del database o aree.
Il flusso di lavoro di acquisizione e ripetizione tra i database autonomi è costituito dai passi riportati di seguito (l'utente annulla o completa un'acquisizione del carico di lavoro, non entrambi):
- (Facoltativo) Eseguire la sottoscrizione agli eventi informativi per ricevere notifiche sui dettagli di acquisizione e ripetizione
Eseguire la sottoscrizione agli eventi informativicom.oraclecloud.databaseservice.autonomous.database.information
per ricevere una notifica all'inizio e al completamento di un'acquisizione e una ripetizione. - Ripetizione database consiste nell'acquisizione dei carichi di lavoro di produzione su un'istanza di Autonomous Database
Il primo passo per l'utilizzo della funzione Ripetizione database consiste nell'acquisizione dei carichi di lavoro di produzione. - Annulla un'acquisizione del carico di lavoro su un'istanza di Autonomous Database
EseguireDBMS_CLOUD_ADMIN.CANCEL_WORKLOAD_CAPTURE
per annullare l'acquisizione del carico di lavoro corrente sull'istanza di Autonomous Database. - Fine di un'acquisizione del carico di lavoro sull'istanza di Autonomous Database
EseguireDBMS_CLOUD_ADMIN.FINISH_WORKLOAD_CAPTURE
per completare un'acquisizione del carico di lavoro sull'istanza di Autonomous Database. - Prepara una copia aggiornabile per la ripetizione del carico di lavoro
Fornisce i passi per preparare una copia aggiornabile per una replica del carico di lavoro. - Ripeti un carico di lavoro su un'istanza di Autonomous Database
Dopo aver completato un'acquisizione del carico di lavoro, puoi replicarlo in un sistema di test. Oracle replica le azioni registrate durante l'acquisizione del carico di lavoro con le stesse tempistiche, concorrenza e dipendenze delle transazioni del sistema di produzione. - Eseguire il test dei carichi di lavoro 19c su una copia aggiornabile 23ai con Capture-Replay
È possibile utilizzare Oracle Real Application Testing per acquisire un carico di lavoro da Autonomous Database su Oracle Database 19c e ripetere su una copia aggiornabile su Oracle Database 23ai.
Argomento padre: Test dei carichi di lavoro con Oracle Real Application Testing
(Facoltativo) Eseguire la sottoscrizione agli eventi informativi per ricevere notifiche sui dettagli di acquisizione e ripetizione
Iscriviti agli eventi informativi com.oraclecloud.databaseservice.autonomous.database.information
per ricevere una notifica all'inizio e al completamento di un'acquisizione e una replica.
Questa fase è facoltativa. È inoltre possibile trovare lo stato e le informazioni cronologiche per un'acquisizione del carico di lavoro nelle viste
DBA_CAPTURE_REPLAY_STATUS
e DBA_CAPTURE_REPLAY_HISTORY
.
Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_STATUS Vista e DBA_CAPTURE_REPLAY_HISTORY Vista.
Gli eventi informativi forniscono notifiche sulle ore di inizio e fine dell'acquisizione e della ripetizione e contengono un URL PAR per accedere ai report di acquisizione e ripetizione.
Gli eventi informativi di Autonomous Database includono quanto segue:
WorkloadCaptureBegin
: questo evento viene attivato quando viene avviata un'acquisizione del carico di lavoro.WorkloadCaptureEnd
: questo evento viene attivato quando un'acquisizione del carico di lavoro viene completata correttamente e genera un URL PAR (Preautenticated) per scaricare il file di acquisizione.WorkloadReplayBegin
: questo evento viene attivato quando viene avviata una replica del carico di lavoro.WorkloadReplayEnd
: questo evento viene attivato quando la replica di un carico di lavoro viene completata correttamente e genera un URL PAR preautenticato per scaricare i report di ripetizione.
Per ulteriori informazioni, consulta la sezione relativa agli eventi informativi su Autonomous Database.
Argomento padre: Carichi di lavoro Acquisisci e ripeti tra database autonomi
Acquisisci un carico di lavoro su un'istanza di Autonomous Database
Il primo passo dell'uso della funzione Ripetizione database consiste nell'acquisizione di un carico del lavoro di produzione.
Puoi acquisire un carico di lavoro in un'istanza di Autonomous Database e riprodurlo in un'altra istanza di Autonomous Database. È possibile ripetere il carico di lavoro acquisito su una copia completa o su una copia aggiornabile. Le destinazioni di acquisizione e ripetizione devono trovarsi in uno stato logico coerente. Pertanto, è necessario eseguire il provisioning di una copia aggiornabile o di una copia completa dell'istanza di Autonomous Database in cui si desidera acquisire il carico di lavoro.
Per ulteriori informazioni, vedere Duplica, sposta o aggiorna un'istanza di Autonomous Database.
Quando si avvia l'acquisizione del carico di lavoro in un sistema di produzione, tutte le richieste provenienti da client esterni indirizzati a Oracle Database vengono tracciate e memorizzate in file binari denominati file di acquisizione.
L'acquisizione di un carico di lavoro comporta la creazione di due sottodirectory, cap
e capfiles
, che contengono i file di acquisizione. I file di acquisizione forniscono tutte le informazioni pertinenti sulla richiesta client, inclusi i dettagli della transazione, i valori di associazione e il testo SQL. I file di acquisizione sono indipendenti dalla piattaforma, pertanto possono essere trasportati in un altro sistema.
Eseguire DBMS_CLOUD_ADMIN.START_WORKLOAD_CAPTURE
per avviare l'acquisizione del carico di lavoro su un'istanza di Autonomous Database.
Per ulteriori informazioni, vedere Duplica, sposta o aggiorna un'istanza di Autonomous Database.
Per avviare un'acquisizione del carico di lavoro nell'istanza di Autonomous Database, è necessario essere connessi come utente ADMIN
o disporre del privilegio EXECUTE
su DBMS_CLOUD_ADMIN
.
Esempio per avviare un'acquisizione del carico di lavoro:
BEGIN
DBMS_CLOUD_ADMIN.START_WORKLOAD_CAPTURE
(
capture_name => 'test',
duration => 60);
END;
/
Ciò avvia l'acquisizione del carico di lavoro nell'istanza di Autonomous Database.
Di seguito sono riportati i parametri disponibili.
-
capture_name
: è il nome dell'acquisizione del carico di lavoro. -
duration
: indica la durata (in minuti) per la quale è necessario acquisire il carico di lavoro. Si tratta di un parametro facoltativo.
Per ulteriori informazioni, vedere START_WORKLOAD_CAPTURE Procedure.
Eventi di acquisizione carico di lavoro
È possibile iscriversi all'evento Informazioni com.oraclecloud.databaseservice.autonomous.database.information
per essere avvisati all'inizio di START_WORKLOAD_CAPTURE
. Per ulteriori informazioni, vedere (Facoltativo) Sottoscrizione a eventi informativi per la notifica dei dettagli di acquisizione e ripetizione.
Viste di acquisizione e ripetizione del carichi di lavoro
È possibile trovare informazioni sull'acquisizione e la replica del carico di lavoro nelle viste DBA_CAPTURE_REPLAY_STATUS
e DBA_CAPTURE_REPLAY_HISTORY
. Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_STATUS Vista e DBA_CAPTURE_REPLAY_HISTORY Vista.
Argomento padre: Carichi di lavoro Acquisisci e ripeti tra database autonomi
Annullare un'acquisizione del carico di lavoro su un'istanza di Autonomous Database
Eseguire DBMS_CLOUD_ADMIN.CANCEL_WORKLOAD_CAPTURE
per annullare l'acquisizione del carico di lavoro corrente nell'istanza di Autonomous Database.
Per annullare un'acquisizione del carico di lavoro, è necessario aver eseguito il login come utente ADMIN
o disporre del privilegio EXECUTE
su DBMS_CLOUD_ADMIN
.
Esempio:
BEGIN
DBMS_CLOUD_ADMIN.CANCEL_WORKLOAD_CAPTURE
;
END;
/
Questa operazione annulla l'acquisizione del carico di lavoro corrente ed esegue un aggiornamento della copia aggiornabile.
È possibile eseguire una query sulla vista DBA_CAPTURE_REPLAY_STATUS
per controllare lo stato dell'annullamento del carico di lavoro.
Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_STATUS View.
Per ulteriori informazioni, vedere CANCEL_WORKLOAD_CAPTURE Procedure.
Argomento padre: Carichi di lavoro Acquisisci e ripeti tra database autonomi
Termina acquisizione carico di lavoro nell'istanza di Autonomous Database
Eseguire DBMS_CLOUD_ADMIN.FINISH_WORKLOAD_CAPTURE
per completare un'acquisizione del carico di lavoro sull'istanza di Autonomous Database.
Esempio per completare un'acquisizione del carico di lavoro sull'istanza di Autonomous Database:
BEGIN
DBMS_CLOUD_ADMIN.FINISH_WORKLOAD_CAPTURE
;
END;
/
Per eseguire questa procedura, è necessario aver eseguito il login come utente ADMIN o disporre del privilegio EXECUTE
su DBMS_CLOUD_ADMIN
. Quando si esegue questa procedura, un file di acquisizione del carico di lavoro viene caricato nell'area di memorizzazione degli oggetti come file zip.
Per ulteriori informazioni, vedere FINISH_WORKLOAD_CAPTURE Procedure.
Eventi di acquisizione carico di lavoro
È possibile effettuare la sottoscrizione all'evento Informazioni com.oraclecloud.databaseservice.autonomous.database.information
per ricevere una notifica relativa a un'acquisizione del carico di lavoro, che include:
-
Il completamento di
FINISH_WORKLOAD_CAPTURE
. -
Campo
captureDownloadURL
che contiene l'URL PAR per accedere all'acquisizione e ai report nell'area di memorizzazione degli oggetti. L'acquisizione e i report sono validi per sette (7) giorni dalla data di generazione dell'URL PAR.
Per ulteriori informazioni, vedere (Facoltativo) Sottoscrizione a eventi informativi per la notifica dei dettagli di acquisizione e ripetizione.
Viste di acquisizione e ripetizione carico del lavoro
È possibile eseguire una query sulla vista DBA_CAPTURE_REPLAY_STATUS
per controllare lo stato di un'acquisizione del carico di lavoro completata. Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_STATUS View.
È possibile trovare informazioni sull'acquisizione e la ripetizione del carico di lavoro nella vista DBA_CAPTURE_REPLAY_HISTORY
. Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_HISTORY View.
È possibile eseguire una query sulle colonne ID
, NAME
, START_TIME
e END_TIME
della vista DBA_WORKLOAD_CAPTURES
per recuperare i dettagli dell'acquisizione del carico di lavoro. Per ulteriori informazioni, vedere DBA_WORKLOAD_CAPTURES.
Argomento padre: Carichi di lavoro Acquisisci e ripeti tra database autonomi
Prepara una copia aggiornabile per la ripetizione del carico di lavoro
Fornisce i passi per preparare una copia aggiornabile per una ripetizione del carico di lavoro.
Questo passo non è applicabile quando si esegue la ripetizione di un carico di lavoro su una copia completa.
Sono disponibili due opzioni per preparare una copia aggiornabile per riprodurre un'acquisizione del carico di lavoro. È possibile eseguire DBMS_CLOUD_ADMIN.PREPARE_REPLAY
per preparare automaticamente una copia aggiornabile per una replica del carico di lavoro. Questa procedura aggiorna la copia aggiornabile all'ora di inizio dell'acquisizione e disconnette la copia aggiornabile. È inoltre possibile preparare manualmente una copia aggiornabile per riprodurre un'acquisizione del carico di lavoro.
Prepara automaticamente una copia aggiornabile per la ripetizione del carico di lavoro
Esempio di preparazione automatica di una copia aggiornabile per una replica del carico di lavoro:
BEGIN
DBMS_CLOUD_ADMIN.PREPARE_REPLAY
(
capture_name 'test'
END;
/
Per eseguire questa procedura, è necessario aver eseguito il login come utente ADMIN
o disporre del privilegio EXECUTE
su DBMS_CLOUD_ADMIN
.
DBMS_CLOUD_ADMIN.PREPARE_REPLAY
esegue le operazioni riportate di seguito.
-
Aggiorna la copia aggiornabile all'indicatore orario di inizio acquisizione.
-
Disconnette la copia aggiornabile.
Facoltativamente, a questo punto, prima di ripetere un'acquisizione, è possibile apportare modifiche a una copia aggiornabile. Ad esempio, la modifica dei valori dei parametri e la disattivazione di determinate funzioni per visualizzare l'impatto sulla ripetizione.
Prepara manualmente una copia aggiornabile per la ripetizione del carico di lavoro
Queste operazioni manuali di aggiornamento della copia non sono necessarie quando si prepara automaticamente una copia aggiornabile eseguendo DBMS_CLOUD_ADMIN.PREPARE_REPLAY
.
Eseguire i passi riportati di seguito per prepararsi manualmente a una replica del carico di lavoro.
-
Trovare l'indicatore orario di inizio acquisizione eseguendo una query sulla vista
DBA_WORKLOAD_CAPTURES
. Per ulteriori informazioni, vedere DBA_WORKLOAD_CAPTURES. -
Aggiornare la copia aggiornabile all'indicatore orario di inizio acquisizione. Per ulteriori informazioni, vedere Aggiorna una copia aggiornabile in Autonomous Database.
-
Disconnettere manualmente la copia aggiornabile. Per ulteriori informazioni, vedere Disconnettere una copia aggiornabile dal database di origine.
-
Facoltativamente, prima di ripetere un'acquisizione, è possibile apportare modifiche alla copia aggiornabile. Ad esempio, modificando i valori dei parametri, attivando o disattivando determinate funzioni per visualizzare l'impatto sulla ripetizione.
Argomento padre: Carichi di lavoro Acquisisci e ripeti tra database autonomi
Ripeti un carico di lavoro su un'istanza di Autonomous Database
Dopo aver completato un'acquisizione del carico di lavoro, è possibile riprodurla in un sistema di test. Oracle replica le azioni registrate durante l'acquisizione del carico di lavoro con le stesse tempistiche, concorrenza e dipendenze delle transazioni del sistema di produzione.
Eseguire la procedura DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD
per avviare la ripetizione del carico di lavoro nel database. Per eseguire DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD
, è necessario aver eseguito il login come utente ADMIN o disporre del privilegio EXECUTE
su DBMS_CLOUD_ADMIN
.
Puoi ripetere un carico di lavoro acquisito su una copia aggiornabile o su una copia completa dell'istanza di Autonomous Database da cui è stato acquisito il carico di lavoro. Le destinazioni di acquisizione e ripetizione devono trovarsi in uno stato logico coerente.
Ripeti carico di lavoro su una copia aggiornabile
Nell'esempio riportato di seguito vengono scaricati i file di acquisizione dallo storage degli oggetti, viene riprodotto il carico di lavoro acquisito e viene caricato un report di ripetizione nello storage degli oggetti.
BEGIN
DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD
(
capture_name => 'CAP_TEST1');
END;
/
Il parametro CAPTURE_NAME
specifica il nome dell'acquisizione del carico di lavoro. Questo parametro è obbligatorio.
Riproduci carico di lavoro su una copia completa
In questo esempio seguente vengono scaricati i file di acquisizione dallo storage degli oggetti, viene riprodotto il carico di lavoro acquisito nella copia e viene caricato un report di ripetizione nello storage degli oggetti.
BEGIN
DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD
(
capture_name => 'CAP_TEST1',
capture_source_tenancy_ocid => 'OCID1.TENANCY.REGION1..ID1',
capture_source_db_name => 'ADWFINANCE');
END;
/
Se sono presenti più acquisizioni con lo stesso nome di acquisizione, la procedura
REPLAY_WORKLOAD
utilizza l'acquisizione più recente. Oracle consiglia di utilizzare un nome di acquisizione univoco per ogni acquisizione per evitare confusione su quale acquisizione si sta ripetendo.
Il parametro CAPTURE_NAME
specifica il nome dell'acquisizione del carico di lavoro. Questo parametro è obbligatorio.
Il parametro CAPTURE_SOURCE_TENANCY_OCID
specifica l'OCID tenancy di origine dell'acquisizione del carico di lavoro. Questo parametro è obbligatorio quando si esegue l'acquisizione del carico di lavoro in una copia completa.
Il parametro CAPTURE_SOURCE_DB_NAME
specifica il nome del database di origine dell'acquisizione del carico di lavoro. Questo parametro è obbligatorio quando si esegue l'acquisizione del carico di lavoro in una copia completa.
Per ulteriori informazioni, vedere REPLAY_WORKLOAD Procedure.
Eventi ripetizione carico di lavoro
Iscriviti all'evento informativo com.oraclecloud.databaseservice.autonomous.database.information
per essere informato sui seguenti
-
Inizio e completamento di un
REPLAY_WORKLOAD
. -
Collegamento all'area di memorizzazione degli oggetti per scaricare i report di ripetizione. L'evento fornisce un URL PAR per accedere ai report nel campo
replayDownloadURL
. I report sono validi per sette (7) giorni dalla data di generazione dell'URL PAR.
Per ulteriori informazioni, consulta la sezione relativa agli eventi informativi su Autonomous Database.
Viste di acquisizione e ripetizione del carichi di lavoro
È possibile eseguire una query sulla vista DBA_CAPTURE_REPLAY_STATUS
per controllare lo stato della ripetizione del carico di lavoro.
Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_STATUS View.
È possibile trovare informazioni sull'acquisizione e la ripetizione del carico di lavoro nella vista DBA_CAPTURE_REPLAY_HISTORY
. Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_HISTORY View.
Argomento padre: Carichi di lavoro Acquisisci e ripeti tra database autonomi
Test dei carichi di lavoro 19c su una copia aggiornabile 23ai con Capture-Replay
Puoi utilizzare Oracle Real Application Testing per acquisire un carico di lavoro da Autonomous Database su Oracle Database 19c e replicarlo in una copia aggiornabile su Oracle Database 23ai.
Questa opzione Capture-Replay è particolarmente utile quando si desidera eseguire il test dei carichi di lavoro in esecuzione su Oracle Database 19c prima di eseguire l'upgrade a Oracle Database 23ai.
Per riprodurre i carichi di lavoro in una versione diversa del database, effettuare le operazioni riportate di seguito.
-
Acquisisci i tuoi carichi di lavoro su un Autonomous Database con Oracle Database 19c. Per ulteriori informazioni, vedere Acquisisci un carico di lavoro su un'istanza di Autonomous Database.
-
Eseguire
DBMS_CLOUD_ADMIN.FINISH_WORKLOAD_CAPTURE
per completare l'acquisizione del carico di lavoro nell'istanza di database Oracle Database 19c sourceAutonomous. -
Preparare la copia aggiornabile di Oracle Database 23ai di destinazione. Per ulteriori informazioni, vedere Preparare una copia aggiornabile per la ripetizione del carico di lavoro.
-
Dopo aver completato l'acquisizione del carico di lavoro e aver preparato la copia aggiornabile della destinazione Oracle Database 23ai, ripetere il carico di lavoro sulla destinazione. Per ulteriori informazioni, vedere Ripeti un carico di lavoro su un'istanza di Autonomous Database.
Argomento padre: Carichi di lavoro Acquisisci e ripeti tra database autonomi
Carichi di lavoro Capture-Replay tra database non autonomi e Autonomous
Puoi acquisire e ripetere da un'istanza non Autonomous Database in un'istanza di Autonomous Database.
Ciò consente di confrontare i carichi di lavoro tra un database on premise o un altro database di servizi cloud e un'istanza di Autonomous Database.
Argomenti
- Ripetizione database
Il primo passo dell'uso della funzione Replica database consiste nell'acquisizione del carico del lavoro di produzione. - Ripeti un carico di lavoro su un'istanza di Autonomous Database
Dopo aver completato un'acquisizione del carico di lavoro, puoi replicarlo in un sistema di test. Oracle replica sul sistema di test le azioni registrate durante l'acquisizione del carico di lavoro, con le stesse tempistiche, concorrenza e dipendenze delle transazioni del sistema di produzione.
Argomento padre: Test dei carichi di lavoro con Oracle Real Application Testing
Acquisisci carico di lavoro
Il primo passo dell'uso della funzionalità Ripetizione database consiste nell'acquisizione del carico del lavoro di produzione.
Quando si avvia l'acquisizione del carico di lavoro nel sistema di produzione, tutte le richieste provenienti da client esterni indirizzati a Oracle Database vengono tracciate e memorizzate in file binari denominati file di acquisizione.
L'acquisizione di un carico di lavoro comporta la creazione di due sottodirectory, cap
e capfiles
, che contengono i file di acquisizione.
I file di acquisizione forniscono tutte le informazioni pertinenti sulla richiesta client, inclusi i dettagli della transazione, i valori di associazione e il testo SQL.
I file di acquisizione sono indipendenti dalla piattaforma, pertanto possono essere trasportati in un altro sistema.
Fare riferimento alla sezione Acquisizione del carico di lavoro per acquisire un carico di lavoro in un database in locale.
Ripeti un carico di lavoro su un'istanza di Autonomous Database
Dopo aver completato un'acquisizione del carico di lavoro, è possibile riprodurla in un sistema di test. Oracle replica sul sistema di test le azioni registrate durante l'acquisizione del carico di lavoro, con le stesse tempistiche, concorrenza e dipendenze delle transazioni del sistema di produzione.
Eseguire DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD
per avviare la ripetizione del carico di lavoro nel database. Per eseguire REPLAY_WORKLOAD
, è necessario aver eseguito il login come utente ADMIN
oppure disporre del privilegio EXECUTE
su DBMS_CLOUD_ADMIN
.
Esempio per riprodurre su un'istanza di Autonomous Database un carico di lavoro acquisito da un database in locale:
BEGIN
DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD
(
location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
credential_name => 'CRED_TEST',
synchronization => TRUE,
process_capture => TRUE);
END;
/
In questo modo vengono scaricati i file di acquisizione contenuti nella posizione di storage degli oggetti specificata nel parametro location_uri
e viene riprodotta l'acquisizione del carico di lavoro dai file di acquisizione. La ripetizione genera e carica i report di ripetizione e Automatic Workload Repository nella posizione di storage degli oggetti specificata nel parametro location_uri
.
In questo esempio, namespace-string
è lo spazio di nomi dello storage degli oggetti Oracle Cloud Infrastructure e bucketname
è il nome del bucket. Per ulteriori informazioni, vedere Informazioni sugli spazi di nomi dello storage degli oggetti.
Per ulteriori informazioni sul caricamento dei file nello storage degli oggetti, vedere Carica i file nel bucket dell'area di memorizzazione degli oggetti di Oracle Cloud Infrastructure.
Per ulteriori informazioni sullo storage degli oggetti, consulta la sezione Passare a Oracle Cloud Infrastructure Object Storage and Create Bucket.
Il parametro credential_name
specifica la credenziale per accedere al bucket di storage degli oggetti. La credenziale fornita deve disporre dei privilegi di scrittura per scrivere nel bucket di storage degli oggetti. I privilegi di scrittura sono necessari per caricare il report di ripetizione nel bucket.
Se non si specifica un valore credential_name
, viene utilizzato DEFAULT_CREDENTIAL
.
Non è necessario creare una credenziale per accedere all'area di memorizzazione degli oggetti di Oracle Cloud Infrastructure se si abilitano le credenziali del principal risorsa. Per ulteriori informazioni, consulta la sezione Usa principal risorsa per accedere alle risorse di Oracle Cloud Infrastructure.
Il parametro synchronization
specifica il metodo di sincronizzazione utilizzato durante la ripetizione del carico di lavoro. Un valore TRUE
indica che la sincronizzazione è basata su SCN.
process_capture
specifica se è necessario specificare o meno il valore process_capture
. Un valore TRUE
indica che la ripetizione include process_capture
.
È necessario mantenere lo stesso stato logico dei database di acquisizione e ripetizione all'inizio dell'ora di acquisizione.
Per ulteriori informazioni, vedere REPLAY_WORKLOAD Procedure.
Eventi ripetizione carico di lavoro
È possibile iscriversi all'evento informativo com.oraclecloud.databaseservice.autonomous.database.information
per essere informati sugli eventi WorkloadReplayBegin
e WorkloadReplayEnd
. Questi eventi forniscono informazioni su:
-
Avvio e completamento di
REPLAY_WORKLOAD
. -
Campo
replayDownloadURL
che contiene l'URL PAR per accedere ai report nell'area di memorizzazione degli oggetti. L'URL PAR è valido per 7 giorni dalla data di generazione.
Per ulteriori informazioni, consulta la sezione relativa agli eventi informativi su Autonomous Database.
Viste di acquisizione e ripetizione del carichi di lavoro
È possibile eseguire una query sulle viste DBA_CAPTURE_REPLAY_STATUS
e DBA_CAPTURE_REPLAY_HISTORY
per controllare lo stato della ripetizione del carico di lavoro.
Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_STATUS Vista e DBA_CAPTURE_REPLAY_HISTORY Vista.
Test dei carichi di lavoro rispetto a una patch imminente
Utilizzando la funzione di ripetizione automatica del carico di lavoro, è possibile acquisire automaticamente un carico di lavoro da un database di produzione che si trova a livello di patch normale e ripetere il carico di lavoro su una copia aggiornabile di destinazione che si trova a livello di patch iniziale.
Questa funzione consente di eseguire il test di una patch imminente eseguendo un carico di lavoro esistente in produzione su una patch prima che la patch raggiunga la produzione.
- Informazioni sul test dei carichi di lavoro rispetto a una patch imminente
Utilizzando la funzione di ripetizione automatica del carico di lavoro è possibile automatizzare il processo di acquisizione della riproduzione per acquisire un carico di lavoro eseguito su un database di produzione e ripetere automaticamente il carico di lavoro su una copia aggiornabile di destinazione dopo l'applicazione di una patch imminente sulla destinazione. - Abilita ripetizione automatica carico di lavoro
La funzioneWORKLOAD_AUTO_REPLAY
consente di eseguire un carico di lavoro dal database di produzione e monitorare eventuali divergenze su un'istanza a cui vengono applicate le patch con una settimana di anticipo. Questa funzione consente di eseguire il test di una patch imminente eseguendo un carico di lavoro esistente in produzione su una patch prima che la patch raggiunga la produzione. - Disabilita ripetizione automatica carico di lavoro
EseguireDBMS_CLOUD_ADMIN.DISABLE_FEATURE
per disabilitareWORKLOAD_AUTO_REPLAY
.
Argomento padre: Test dei carichi di lavoro con Oracle Real Application Testing
Informazioni sul test dei carichi di lavoro rispetto a una patch imminente
Utilizzando la funzione di ripetizione automatica del carico di lavoro, è possibile automatizzare il processo di acquisizione-riproduzione per acquisire un carico di lavoro eseguito su un database di produzione e ripetere automaticamente il carico di lavoro su una copia aggiornabile di destinazione dopo l'applicazione di una patch imminente sulla destinazione.
Autonomous Database offre la possibilità di eseguire il provisioning di un'istanza o creare una copia aggiornabile con l'opzione a livello di patch prima. Nelle istanze in esecuzione a livello di patch prima, Autonomous Database applica patch di manutenzione imminenti una settimana prima che le patch vengano applicate ai database di produzione (database di cui viene eseguito il provisioning a livello di patch regolare). Utilizzando la funzione WORKLOAD_AUTO_REPLAY
è possibile assicurarsi che una patch imminente venga testata sul carico di lavoro prima che la patch venga messa in produzione. Ciò consente di verificare che la patch risolva un problema noto o non presenti un problema che interessa il carico di lavoro.
Per trovare informazioni su acquisizioni e repliche, iscriviti agli eventi Informazioni. Gli eventi informativi forniscono una notifica per gli eventi di acquisizione e risposta del carico di lavoro e includono un URL PAR in cui è possibile scaricare il file di acquisizione e il report di ripetizione. Per ulteriori informazioni, vedere (Facoltativo) Sottoscrizione a eventi informativi per la notifica dei dettagli di acquisizione e ripetizione.
Quando WORKLOAD_AUTO_REPLAY
è abilitato, il database di origine acquisisce un carico di lavoro in esecuzione per un numero specificato di minuti. Per impostazione predefinita, l'acquisizione del carico di lavoro viene avviata quando si abilita WORKLOAD_AUTO_REPLAY
(facoltativamente è possibile utilizzare i parametri per impostare il giorno e l'ora di inizio dell'acquisizione). Successivamente, Autonomous Database controlla il database di destinazione per verificare lo stato di applicazione delle patch. Dopo l'applicazione della patch settimanale imminente, Autonomous Database riproduce il carico di lavoro sul database di destinazione. Questo ciclo di acquisizione e riproduzione continua automaticamente ogni settimana con Autonomous Database che acquisisce il carico di lavoro nel database di origine, in attesa dell'applicazione della patch imminente e della ripetizione del carico di lavoro nella copia aggiornabile.
Per abilitare WORKLOAD_AUTO_REPLAY
, tenere presente quanto riportato di seguito.
-
Il database di origine deve utilizzare il livello di patch Regolare.
-
Il database di destinazione deve utilizzare il livello di patch Early.
-
Il database di destinazione deve essere una copia aggiornabile del database di origine e deve essere creato prima di abilitare
WORKLOAD_AUTO_REPLAY
. -
Un database di origine può abilitare
WORKLOAD_AUTO_REPLAY
per non più di una copia aggiornabile (è possibile abilitare questa funzione per un massimo di una copia aggiornabile, anche se si creano più copie aggiornabili dallo stesso database di origine). -
Dopo aver abilitato
WORKLOAD_AUTO_REPLAY
, il ciclo di acquisizione-riproduzione continua ogni settimana. Autonomous Database esegue un'acquisizione nel database di origine e quindi riproduce il carico di lavoro nel database di destinazione fino a quando non si disabilitaWORKLOAD_AUTO_REPLAY
.
È possibile trovare informazioni sulle acquisizioni e sulle repliche del carico di lavoro nella vista DBA_CAPTURE_REPLAY_HISTORY
. Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_HISTORY View.
Autonomous Database applica automaticamente le patch sul tuo database. Oracle fornisce un obiettivo del livello di servizio pari a zero regressioni nel database di produzione a causa di queste patch. Per ulteriori informazioni, vedere Obiettivo livello di servizio zero regressioni.
Argomento padre: Eseguire il test dei carichi di lavoro su una patch imminente
Abilita ripetizione automatica carico di lavoro
La funzione WORKLOAD_AUTO_REPLAY
consente di eseguire un carico di lavoro dal database di produzione e di monitorare eventuali divergenze su un'istanza a cui viene applicata una patch con una settimana di anticipo. Questa funzione consente di eseguire il test di una patch imminente eseguendo un carico di lavoro esistente in produzione su una patch prima che la patch raggiunga la produzione.
Per abilitare WORKLOAD_AUTO_REPLAY
:
Questo esempio abilita WORKLOAD_AUTO_REPLAY
nell'Autonomous Database di origine e nel database di copia aggiornabile di destinazione specificato. Con WORKLOAD_AUTO_REPLAY
abilitato, ogni settimana Autonomous Database esegue un'acquisizione nel database di origine e riproduce il carico di lavoro nel database di destinazione, fino a quando non si disabilita WORKLOAD_AUTO_REPLAY
.
Per trovare informazioni su acquisizioni e repliche, iscriviti agli eventi Informazioni. Gli eventi informativi forniscono una notifica per gli eventi di acquisizione e risposta del carico di lavoro e includono un URL PAR in cui è possibile scaricare il file di acquisizione e il report di ripetizione. Per ulteriori informazioni, vedere (Facoltativo) Sottoscrizione a eventi informativi per la notifica dei dettagli di acquisizione e ripetizione.
È possibile trovare informazioni sulle acquisizioni e sulle repliche del carico di lavoro nella vista DBA_CAPTURE_REPLAY_HISTORY
. Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_HISTORY View.
Argomento padre: Eseguire il test dei carichi di lavoro su una patch imminente
Disabilita ripetizione automatica carico di lavoro
Eseguire DBMS_CLOUD_ADMIN.DISABLE_FEATURE
per disabilitare WORKLOAD_AUTO_REPLAY
.
Eseguire DBMS_CLOUD_ADMIN.DISABLE_FEATURE
per disabilitare la ripetizione automatica del carico di lavoro. Ad esempio:
BEGIN
DBMS_CLOUD_ADMIN.DISABLE_FEATURE
(
feature_name => 'WORKLOAD_AUTO_REPLAY');
END;
/
È necessario aver eseguito il login come ADMIN o disporre dei privilegi DBMS_CLOUD_ADMIN
per eseguire DBMS_CLOUD_ADMIN.DISABLE_FEATURE
.
Per ulteriori informazioni, vedere DISABLE_FEATURE Procedure.
Argomento padre: Eseguire il test dei carichi di lavoro su una patch imminente