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 in modo completo i risultati 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 di lavoro su un sistema di produzione e riprodurlo su un sistema di test con le esatte caratteristiche di tempistica, concorrenza e transazione del carico di lavoro originale. - Acquisisci e riproduci i carichi di lavoro tra Autonomous Database
È possibile acquisire e ripetere da un'istanza di Autonomous Database in un'altra istanza di Autonomous Database. - Acquisisci e riproduci i carichi di lavoro tra database non Autonomous e Autonomous
È possibile acquisire e ripetere da un'istanza non Autonomous Database in un Autonomous Database. - Eseguire il test dei carichi di lavoro in base 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 al livello di patch standard e ripetere il carico di lavoro su una copia aggiornabile di destinazione che si trova al livello di patch precedente.
Argomento padre: Sviluppa
Informazioni su Oracle Real Application Testing
È possibile utilizzare Oracle Real Application Testing per acquisire un carico di lavoro in un sistema di produzione e ripeterlo in un sistema di test con le stesse caratteristiche, in termini di tempificazione, accesso concorrente e transazioni, del carico di lavoro originale.
Oracle Real Application Testing fornisce un metodo accurato per verificare l'impatto di diverse modifiche al sistema e consente di eseguire le attività indicate di seguito.
-
È possibile verificare gli effetti di una modifica apportata al sistema su un carico di lavoro senza effetti sul sistema di produzione.
-
È possibile acquisire un carico di lavoro su un sistema di produzione e simulare lo stesso carico di lavoro su un sistema di test.
È possibile utilizzare Oracle Database Replay per acquisire un carico di lavoro da un'istanza di Autonomous Database o da un database in locale o da qualsiasi altro database del servizio 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 di servizi cloud.
Real Application Testing consente di eseguire una qualsiasi delle seguenti azioni Capture-Replay:
Acquisisci opzione di ripetizione | descrizione; |
---|---|
Acquisisci - Ripeti i carichi di lavoro tra i database autonomi. |
Per ulteriori informazioni, vedere Acquisisci e riproduci i carichi di lavoro tra database autonomi. |
Acquisisci il carico di lavoro da Autonomous Database Oracle Database 19c e riproduci su Autonomous Database con Oracle Database 23ai |
Questa replica di Capture consente di acquisire un carico di lavoro su un Autonomous Database con Oracle Database 19c e di ripetere l'operazione su un Autonomous Database con Oracle Database 23ai. Per ulteriori informazioni, vedere Test dei carichi di lavoro 19c su una copia aggiornabile 23ai con Capture-Replay. |
Acquisisci un carico di lavoro da un database non Autonomous Database e riproduci su Autonomous Database. |
Per ulteriori informazioni, consulta la sezione relativa all'acquisizione e alla ripetizione dei carichi di lavoro tra database non autonomi e Autonomous. |
Acquisisci un carico di lavoro da un Autonomous Database di produzione e riproducilo 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
È possibile 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 Capture-Replay tra Autonomous Database è costituito dai passi riportati di seguito (è possibile annullare o completare 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 notifiche all'inizio e al completamento di un'acquisizione e di una ripetizione. - Acquisire un carico di lavoro su un'istanza di Autonomous Database
Il primo passo per l'uso della funzione Ripetizione database consiste nell'acquisizione di un carico 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 nell'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 la ripetizione di un carico di lavoro. - Ripeti un carico di lavoro su un'istanza di Autonomous Database
Dopo aver completato un'acquisizione del carico di lavoro, è possibile ripeterla su un sistema di test. Oracle ripete le azioni registrate durante l'acquisizione del carico di lavoro con le stesse dipendenze a livello di tempistica, concorrenza e transazioni del sistema di produzione. - Test dei carichi di lavoro 19c su una copia aggiornabile su 23ai con replica di acquisizione
È possibile utilizzare Oracle Real Application Testing per acquisire un carico di lavoro da Autonomous Database su Oracle Database 19c e ripetere l'esecuzione 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 informazioni per ricevere notifiche sui dettagli di acquisizione e ripetizione
Eseguire la sottoscrizione agli eventi di informazioni com.oraclecloud.databaseservice.autonomous.database.information
per ricevere una notifica all'inizio e al completamento di un'acquisizione e di una ripetizione.
Questo passo è facoltativo. È inoltre possibile trovare informazioni cronologiche e sullo stato di 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 View e DBA_CAPTURE_REPLAY_HISTORY View.
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 di informazione di Autonomous Database includono i seguenti:
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 (Pre-Autenticated) per scaricare il file di acquisizione.WorkloadReplayBegin
: questo evento viene attivato quando viene avviata una ripetizione del carico di lavoro.WorkloadReplayEnd
: questo evento viene attivato quando una ripetizione del carico di lavoro viene completata correttamente e genera un URL PAR (Pre-authenticated) per scaricare i report di ripetizione.
Per ulteriori informazioni, consulta gli eventi di informazioni su Autonomous Database.
Argomento padre: Acquisisci - Ripeti carichi di lavoro tra database autonomi
Acquisire 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 di lavoro di produzione.
È possibile acquisire un carico di lavoro in un'istanza di Autonomous Database e riprodurlo in un'altra istanza di Autonomous Database. Puoi ripetere il carico di lavoro acquisito su una copia completa o su una copia aggiornabile. Le destinazioni di acquisizione e ripetizione devono essere in uno stato logico coerente. Pertanto, devi eseguire il provisioning di una copia aggiornabile o di una copia completa dell'istanza di Autonomous Database in cui desideri 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 dei client esterni indirizzate a Oracle Database vengono registrate e memorizzate in file binari chiamati file di acquisizione.
Un'acquisizione del 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 sulle richieste del client, inclusi i dettagli delle transazioni, 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 sull'istanza di Autonomous Database, è necessario eseguire il login 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;
/
Questa operazione avvia l'acquisizione del carico di lavoro nell'istanza di Autonomous Database.
Di seguito sono riportati i parametri.
-
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 Procedura.
Eventi di acquisizione carico di lavoro
Puoi iscriverti all'evento Information com.oraclecloud.databaseservice.autonomous.database.information
per ricevere una notifica all'inizio di START_WORKLOAD_CAPTURE
. Per ulteriori informazioni, vedere (Facoltativo) Sottoscrivi a eventi informazioni a cui inviare notifiche sui dettagli di acquisizione e ripetizione.
Viste di acquisizione e ripetizione carico di lavoro
È possibile trovare informazioni sull'acquisizione e la ripetizione del carico di lavoro nelle viste DBA_CAPTURE_REPLAY_STATUS
e DBA_CAPTURE_REPLAY_HISTORY
. Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_STATUS View e DBA_CAPTURE_REPLAY_HISTORY View.
Argomento padre: Acquisisci - Ripeti carichi di lavoro 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
.
Ad 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 Procedura.
Argomento padre: Acquisisci - Ripeti carichi di lavoro tra database autonomi
Terminare un'acquisizione del carico di lavoro sull'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 eseguire 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 Procedura.
Eventi di acquisizione carico di lavoro
È possibile iscriversi 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
. -
Il 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) Sottoscrivi a eventi informazioni a cui inviare notifiche sui dettagli di acquisizione e ripetizione.
Viste di acquisizione e ripetizione carico di lavoro
È possibile eseguire una query sulla vista DBA_CAPTURE_REPLAY_STATUS
per verificare 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. Vedere DBA_WORKLOAD_CAPTURES.
Argomento padre: Acquisisci - Ripeti carichi di lavoro 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 ripetere un'acquisizione del carico di lavoro. È possibile eseguire DBMS_CLOUD_ADMIN.PREPARE_REPLAY
per preparare automaticamente una copia aggiornabile per una ripetizione 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 ripetere 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 ripetizione 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
effettua le operazioni riportate di seguito.
-
Aggiorna la copia aggiornabile all'indicatore orario di inizio dell'acquisizione.
-
Disconnette la copia aggiornabile.
Facoltativamente, a questo punto, prima di ripetere un'acquisizione, è possibile apportare modifiche a una copia aggiornabile. Ad esempio, modificare i valori dei parametri e attivare/disattivare determinate funzioni per visualizzare l'impatto sulla ripetizione.
Prepara manualmente una copia aggiornabile per la ripetizione del carico di lavoro
Questi passi di copia aggiornabile manuale non sono necessari quando si prepara automaticamente una copia aggiornabile eseguendo DBMS_CLOUD_ADMIN.PREPARE_REPLAY
.
Eseguire i passi riportati di seguito per prepararsi manualmente per una ripetizione del carico di lavoro.
-
Trovare l'indicatore orario di inizio dell'acquisizione eseguendo una query sulla vista
DBA_WORKLOAD_CAPTURES
. 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, modificare i valori dei parametri, attivare/disattivare determinate funzioni per visualizzare l'impatto sulla ripetizione.
Argomento padre: Acquisisci - Ripeti carichi di lavoro 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 ripete le azioni registrate durante l'acquisizione del carico di lavoro con le stesse dipendenze a livello di tempistica, concorrenza e 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
in 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 essere in uno stato logico coerente.
Ripeti carico di lavoro in caso di copia aggiornabile
L'esempio seguente scarica i file di acquisizione dallo storage degli oggetti, ripete il carico di lavoro acquisito e carica 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.
Ripeti carico di lavoro in una copia completa
Questo esempio riportato di seguito consente di scaricare i file di acquisizione dallo storage degli oggetti, riprodurre il carico di lavoro acquisito sulla copia e caricare 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 sull'acquisizione che 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 della 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 Procedura.
Eventi di ripetizione del carico di lavoro
Iscriviti all'evento Information com.oraclecloud.databaseservice.autonomous.database.information
per essere informato su quanto segue
-
L'inizio e il completamento di un
REPLAY_WORKLOAD
. -
Collegamento Area di memorizzazione 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 gli eventi di informazioni su Autonomous Database.
Viste di acquisizione e ripetizione carico 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: Acquisisci - Ripeti carichi di lavoro 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 ripetere l'operazione su 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.
Attenersi alla procedura riportata di seguito per riprodurre i carichi di lavoro su una versione del database diversa.
-
Acquisisci i tuoi carichi di lavoro su un Autonomous Database con Oracle Database 19c. Per ulteriori informazioni, consulta la sezione relativa all'acquisizione di 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 sull'istanza del database 19c sourceAutonomous di Oracle Database. -
Prepara 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 Replay a Workload on an Autonomous Database Instance.
Argomento padre: Acquisisci - Ripeti carichi di lavoro tra database autonomi
Acquisisci - Ripeti i carichi di lavoro tra database non autonomi e autonomi
È possibile acquisire e ripetere da un'istanza non Autonomous Database in un Autonomous Database.
Ciò consente di confrontare i carichi di lavoro tra un database in locale o un altro database del servizio cloud e un'istanza di Autonomous Database.
Argomenti
- Acquisire un carico di lavoro
Il primo passo per l'uso della funzione Ripetizione database consiste nell'acquisizione del carico di lavoro di produzione. - Ripeti un carico di lavoro su un'istanza di Autonomous Database
Dopo aver completato un'acquisizione del carico di lavoro, puoi ripeterla su un sistema di test. Oracle replica sul sistema di test le azioni registrate durante l'acquisizione del carico di lavoro, con le stesse dipendenze di tempistica, concorrenza e transazione del sistema di produzione.
Argomento padre: Test dei carichi di lavoro con Oracle Real Application Testing
Acquisisci un carico di lavoro
Il primo passo per l'uso della funzione Ripetizione database consiste nell'acquisizione del carico di lavoro di produzione.
Quando si avvia l'acquisizione del carico di lavoro nel sistema di produzione, tutte le richieste dei client esterni indirizzate a Oracle Database vengono registrate e memorizzate in file binari chiamati file di acquisizione.
Un'acquisizione del 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 sulle richieste del client, inclusi i dettagli delle transazioni, i valori di associazione e il testo SQL.
I file di acquisizione sono indipendenti dalla piattaforma, pertanto possono essere trasportati in un altro sistema.
Vedere Acquisizione carico di lavoro per acquisire un carico di lavoro su 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 dipendenze di tempistica, concorrenza e transazione 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 di ripetizione in un'istanza di Autonomous Database di 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 ripetuta l'acquisizione del carico di lavoro dai file di acquisizione. La ripetizione genera e carica i report Replay 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 file nel bucket dell'area di memorizzazione degli oggetti Oracle Cloud Infrastructure.
Per ulteriori informazioni sullo storage degli oggetti, vedere Passare a Oracle Cloud Infrastructure Object Storage e Crea 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
, verrà 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 relativa all'uso del principal delle risorse 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 Procedura.
Eventi di ripetizione del carico di lavoro
È possibile iscriversi all'evento Information com.oraclecloud.databaseservice.autonomous.database.information
per ricevere una notifica sugli eventi WorkloadReplayBegin
e WorkloadReplayEnd
. Tali eventi forniscono informazioni su:
-
Avvio e completamento del file
REPLAY_WORKLOAD
. -
Il 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 Eventi informativi sull'Autonomous Database.
Viste di acquisizione e ripetizione carico di lavoro
È possibile eseguire una query sulle viste DBA_CAPTURE_REPLAY_STATUS
e DBA_CAPTURE_REPLAY_HISTORY
per controllare lo stato di ripetizione del carico di lavoro.
Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_STATUS View e DBA_CAPTURE_REPLAY_HISTORY View.
Test dei carichi di lavoro su una patch imminente
Utilizzando la funzione di ripetizione automatica del carico di lavoro, puoi acquisire automaticamente un carico di lavoro da un database di produzione che si trova al livello di patch regolare e ripetere il carico di lavoro su una copia aggiornabile di destinazione che si trova al livello di patch precedente.
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
L'uso della funzione di ripetizione automatica del carico di lavoro consente di automatizzare il processo di recupero 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 del 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 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. - Disabilita ripetizione automatica del 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
La funzione di ripetizione automatica del carico di lavoro consente di automatizzare il processo di recupero per acquisire un carico di lavoro eseguito su un database di produzione e di ripetere automaticamente il carico di lavoro su una copia aggiornabile di destinazione dopo l'applicazione di una patch imminente sulla destinazione.
Autonomous Database consente di eseguire il provisioning di un'istanza o di creare una copia aggiornabile con l'opzione In anticipo a livello di patch. Nelle istanze in esecuzione al livello di patch In anticipo, Autonomous Database applica le patch di manutenzione imminenti una settimana prima dell'applicazione delle patch ai database di produzione (database di cui viene eseguito il provisioning al livello di patch Regolare). Utilizzando la funzione WORKLOAD_AUTO_REPLAY
è possibile assicurarsi che una patch imminente venga sottoposta a test in base al carico di lavoro prima che la patch passi alla produzione. Ciò consente di verificare che la patch risolva un problema noto o non introduca un problema che influisce sul carico di lavoro.
Per trovare informazioni su acquisizioni e ripetizioni, 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) Sottoscrivi a eventi informazioni a cui inviare notifiche sui dettagli di acquisizione e ripetizione.
Quando WORKLOAD_AUTO_REPLAY
è abilitato, il database di origine acquisisce un carico di lavoro eseguendolo per un numero di minuti specificato. 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 ripete il carico di lavoro nel database di destinazione. Questo ciclo di acquisizione e ripetizione continua automaticamente ogni settimana con Autonomous Database che acquisisce il carico di lavoro sul database di origine, attende l'applicazione della patch imminente e ripete il carico di lavoro sulla copia aggiornabile.
Per abilitare WORKLOAD_AUTO_REPLAY
, tenere presente quanto riportato di seguito.
-
Il database di origine deve utilizzare il livello di patch Normale.
-
Il database di destinazione deve utilizzare il livello di patch In anticipo.
-
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 recupero continua ogni settimana. Autonomous Database esegue un'acquisizione nel database di origine, quindi ripete il carico di lavoro nel database di destinazione, finché non si disabilitaWORKLOAD_AUTO_REPLAY
.
Nella vista DBA_CAPTURE_REPLAY_HISTORY
è possibile trovare informazioni sulle acquisizioni e le ripetizioni del carico di lavoro. Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_HISTORY View.
Autonomous Database applica automaticamente le patch al database. Oracle fornisce l'obiettivo del livello di servizio di nessuna regressione nel database di produzione a causa di queste patch. Per ulteriori informazioni, vedere Obiettivo livello di servizio a nessuna regressione.
Abilita ripetizione automatica carico di lavoro
La funzione WORKLOAD_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.
Per abilitare WORKLOAD_AUTO_REPLAY
:
Questo esempio abilita WORKLOAD_AUTO_REPLAY
nell'Autonomous Database di origine e nel database duplicato aggiornabile di destinazione specificato. Se WORKLOAD_AUTO_REPLAY
è abilitato, ogni settimana Autonomous Database esegue un'acquisizione nel database di origine e ripete il carico di lavoro nel database di destinazione, fino a quando non si disabilita WORKLOAD_AUTO_REPLAY
.
Per trovare informazioni su acquisizioni e ripetizioni, 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) Sottoscrivi a eventi informazioni a cui inviare notifiche sui dettagli di acquisizione e ripetizione.
Nella vista DBA_CAPTURE_REPLAY_HISTORY
è possibile trovare informazioni sulle acquisizioni e le ripetizioni del carico di lavoro. Per ulteriori informazioni, vedere DBA_CAPTURE_REPLAY_HISTORY View.
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;
/
Per eseguire DBMS_CLOUD_ADMIN.DISABLE_FEATURE
, è necessario aver eseguito il login come amministratore o disporre dei privilegi DBMS_CLOUD_ADMIN
.
Per ulteriori informazioni, vedere DISABLE_FEATURE Procedura.