Eliminazione di una o più tabelle da una serie di repliche

Si rimuove una tabella da una serie di replica in modo che i dati dalla tabella non siano più replicati.

Prima di iniziare

Questa attività viene eseguita sull'host del cluster per l'origine di replica. Assicurati di raccogliere le seguenti informazioni prima di eseguire la chiamata API:

  • Il token di autorizzazione di base dell'origine sull'host del cluster.1
  • Il nome host del database di origine di replica.
  • Il numero di porta esterno del database di origine di replica.2
  • Il nome della serie di repliche (rsName)3
  • Il nome del gruppo di congruenza (cgName)
  • Il nome della sottoscrizione (subName)4
Queste informazioni sono necessarie per eseguire le chiamate API REST di replica necessarie.
1 È necessario creare un token di autorizzazione di base per eseguire una richiesta cURL . Per creare il token, eseguire questo comando:
echo <source_db_username>:<source_db_password>| base64
2 È possibile recuperare il numero di porta esterno del database di origini di replica eseguendo questo comando:
oc get svc | grep <db2_instance_id> | grep db2u-engn-svc | grep 50001 | sed 's/.*50001://' | sed 's/\/TCP.*//')
3 È possibile trovare il nome della serie di repliche (rsName) e il nome del gruppo di congruenza (cgName) eseguendo il seguente comando:
curl --insecure -X GET --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Basic <your_authorization_token>' 
'https://<source_hostname>:<source_rest_port>/dr/v1/replicationset' 
4 Quando hai i valori rsName e cgName , puoi utilizzarli per trovare il nome della sottoscrizione (subName) immettendo il seguente comando:
curl --insecure -X GET --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Basic <your_authorization_token>' 
'https://<source_hostname>:<source_rest_port>/dr/v1/<replication_name>/<consistency_group_name>' 

Informazioni su questa attività

La rimozione di una tabella non influisce sulla replica per altre tabelle nella serie. Le tabelle sono identificate dai nomi di serie di repliche, gruppo di congruenza e sottoscrizione. Se l'elenco di sottoscrizioni della tabella è vuoto, tutte le sottoscrizioni della tabella nella serie di replica esistente vengono eliminate.

Procedura

Eliminare un elenco di tabelle da una serie di repliche per i sistemi di origine e di destinazione specificati:
curl --insecure -X DELETE --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Basic <your_authorization_token>' -d '{ "tableSubList": [ "<subscription_name>" ]  }' 
'https://<source_hostname>:<source_rest_port>/dr/v1/replicationset/<replication_set_name>/<consistency_group_name>/<subscription_name>'

Risultati

La tabella viene eliminata dalla serie di replica quando viene restituito un messaggio di risposta che contiene status=Passed . Finché non viene restituito questo valore, esaminare il codice di errore, il messaggio e la risoluzione nella risposta.
La tabella seguente elenca i possibili codici di stato HTTP e i messaggi di risposta per la chiamata API di eliminazione della tabella di replica. Include inoltre il codice di esempio per mostrare la sintassi della risposta.
Codice stato HTTP Motivo Modello di risposta
200 Elenco delle sottoscrizioni di tabella eliminate. La richiesta dell'utente restituisce un lavoro (id) e URL come inizio della chiamata API (valore di esempio):

{
  "tableSubList": [
    {
      "tableSub": "DEMORE0001_DSADM_T6R",
      "status": "Passed"
    }
  ]
}
4xx Errore di richiesta client La richiesta dell'utente non è stata soddisfatta a causa di una sintassi della richiesta non corretta o di altri problemi del client:
{
  "errorCode": "string",
  "errorMessage": "string",
  "errorResolution": "string"
}
5xx Errore del server La richiesta dell'utente sembrava valida, ma non è stata soddisfatta a causa di un problema con il server:
{
  "errorCode": "string",
  "errorMessage": "string",
  "errorResolution": "string"
}

Esempio

Il seguente esempio mostra la sintassi del comando per l'eliminazione di tabelle dalla serie di replica DEMOREPLSET1 :
curl --insecure -X DELETE --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Basic ZHNhZG06MDNRVWlMczFhcmoxb3ky' -d '{ "tableSubList": ["DEMORE0001_DSADM_T6R", "DEMORE0001_DSADM_T7R"] }' 
'https://dr-source1.ibm.com:31023/dr/v1/replicationset/DEMOREPLSET1/DEMORE0001/table'