Monta e recupera un database SAP HANA monoutente da un backup del disco permanente

Per ripristinare e recuperare un singolo tenant da un backup del database SAP HANA basato su disco permanente:

Monta il backup

Utilizza la console di gestione per montare il backup sul server di destinazione:

  1. Arresta l'istanza HANA in esecuzione (obbligatorio solo per il recupero all'origine).
  2. Accedi alla console di gestione alla pagina Applications (Applicazioni).
  3. Seleziona il database e Accesso.
  4. Seleziona il backup da recuperare e fai clic su Monta.
  5. Nella pagina Montaggio, seleziona il nome del progetto, la regione, la zona e il nome dell'istanza GCE di destinazione.
  6. Aggiorna la posizione di montaggio del volume di dati, del volume di log e del volume di backup dei log. Per assicurarti che la verifica preliminare vada a buon fine, specifica tutte le posizioni di montaggio non utilizzate.
  7. Disattiva l'opzione Controllo dell'integrità degli snapshot.
  8. Esegui il controllo preflight. Se non va a buon fine, correggi gli errori ed esegui nuovamente il job, quindi invialo.
  9. Una volta completato il job di montaggio, puoi vedere i punti di montaggio sull'host di destinazione.
  10. Se hai eseguito il recupero all'origine, riavvia l'istanza.

Recuperare un database monoproprietario montato

Esempi di variabili utilizzate:

  • DBSID origine: DM2
  • Target DBSID: NVM (deve essere preconfigurato sull'host di destinazione).
  • Volume di dati: /hana/data_2
  • Volume log: /hana/log_2
  • Volume di backup dei log: /hanabackup_2, /hana/backup_2_533788010
  • Tenant di origine: DM2 (località dei file di dati: mnt00001/hdb00002.00003, mnt00001/hdb00003.00003)
  • Tenant di destinazione: NVM

Procedura

  1. Accedi all'host di destinazione come utente root e cambia la proprietà dei file:

    chown -R nvmadm:sapsys /hanabackup_2 /hana/backup_2_533788010
    
  2. Verifica che il file manifest sia stato creato nell'ambito dell'operazione di montaggio:

    cd /act/touch
    cat dm2_HANA.manifest
    

    Un esempio di output è il seguente: SYSTEMDB=mnt00001/hdb00001 DM2=mnt00001/hdb00002.00003:mnt00001/hdb00003.00003

  3. Verifica che sul server di destinazione esista la directory necessaria relativa al database del tenant visualizzato nel file manifest:

    ls -ltr /hana/data/NVM/mnt00001/hdb00002.00003/
    total 103252
    -rw-r--r-- 1 nvmadm sapsys         0 Jun 13 20:11 __DO_NOT_TOUCH_FILES_IN_THIS_DIRECTORY__
    -rw-r--r-- 1 nvmadm sapsys 269811712 Jun 14 19:26 datavolume_0000.dat
    
    ls -ltr /hana/data/NVM/mnt00001/hdb00003.00003/
    total 3801248
    -rw-r--r-- 1 nvmadm sapsys          0 Jun 13 20:11 __DO_NOT_TOUCH_FILES_IN_THIS_DIRECTORY__
    -rw-r--r-- 1 nvmadm sapsys 3892314112 Jun 14 19:29 datavolume_0000.dat
    
  4. Arresta il database del tenant sul server di destinazione:

    hdbsql -U ACTBACKUP
    hdbsql SYSTEMDB=> alter system stop database NVM;
    
  5. Copia i file dai punti di montaggio montati al punto di montaggio del server di destinazione:

    cp /hana/data_2/DM2/mnt00001/hdb00002.00003/* /hana/data/NVM/mnt00001/hdb00002.00003/
    cp /hana/data_2/DM2/mnt00001/hdb00003.00003/* /hana/data/NVM/mnt00001/hdb00003.00003/
    
  6. Assicurati che le autorizzazioni siano modificate per i file copiati:

    chown -R nvmadm:sapsys /hana/data/NVM/mnt00001/hdb00002.00003
    chown -R nvmadm:sapsys /hana/data/NVM/mnt00001/hdb00003.00003
    
  7. Verifica che SYSTEMDB sia avviato.

  8. Recupera il database del tenant utilizzando il recupero point-in-time.

    • Se il database montato contiene più punti di montaggio dei log, passa il percorso del log dei punti di montaggio separati da virgole:
    hdbsql -jAU ACTBACKUP
    
    RECOVER DATABASE FOR NVM UNTIL TIMESTAMP '2024-06-14 17:16:00'  CLEAR LOG USING CATALOG PATH  ('/hana/backup_2_533788010/log/DB_DM2') USING DATA PATH ('/hana/data/NVM')  USING LOG PATH ('/hanabackup_2/log/DB_DM2','/hana/backup_2_533788010/log/DB_DM2') USING SNAPSHOT CHECK ACCESS USING FILE;
    
    • Se esegui il recupero solo dall'immagine del database, utilizza questo comando:
    hdbsql -jAU ACTBACKUP
    RECOVER DATA FOR $TSID USING SNAPSHOT CLEAR LOG
    
  9. Una volta recuperato il database del tenant, controlla il relativo stato:

    hdbsql -jAU ACTBACKUP
    
    hdbsql SYSTEMDB=> select * from m_databases;
    | DATABASE | DESCRIPTION     | ACT | ACTIVE | OS_USER  | OS_GROUP | RESTART | F |
    | -------- | --------------- | --- | ------ | -------- | -------- | ------- | - |
    | SYSTEMDB | SystemDB-NVM-00 | YES | ACTIVE |          |          | DEFAULT | ? |
    | NVM      | NVM-00          | YES | ACTIVE |          |          | DEFAULT | ? |
    
  10. Esegui smontaggio ed eliminazione (per rimuovere i dischi di backup /hana/data_2 e così via).