Melakukan pencadangan dan pemulihan untuk SAP HANA menggunakan snapshot disk

Panduan ini menunjukkan cara melakukan operasi pencadangan dan pemulihan untuk SAP HANA menggunakan fitur snapshot disk dari Agent for SAP dari Google Cloud.

Untuk mengetahui informasi tentang fitur ini, lihat Pencadangan dan pemulihan berbasis snapshot disk untuk SAP HANA.

Sebelum memulai

Tetapkan izin

Agar dapat menggunakan Agent for SAP dari Google Cloud untuk menjalankan pencadangan dan pemulihan berbasis snapshot disk untuk sistem SAP HANA, Anda harus menetapkan izin berikut:

  • Untuk membuat snapshot disk, aktifkan izin IAM berikut:
    • Untuk project Google Cloud tempat sistem SAP HANA Anda berjalan, aktifkan izin compute.snapshots.create.
    • Untuk akun layanan yang digunakan oleh instance VM Compute Engine Anda, aktifkan izin berikut: compute.disks.createSnapshot, compute.snapshot.list, dan compute.disk.list.
  • Untuk membuat cadangan berbasis snapshot disk, pengguna database SAP HANA yang digunakan oleh agen harus memiliki hak istimewa BACKUP OPERATOR atau BACKUP ADMIN. Untuk informasi selengkapnya, lihat dokumen SAP Otorisasi yang Diperlukan untuk Pencadangan dan Pemulihan
  • Untuk menjalankan operasi pencadangan dan pemulihan, pengguna sistem operasi yang menjalankan perintah agen harus pengguna root, atau memiliki akses sudo untuk menjalankan perintah berikut. Anda juga dapat memberi sudo akses dengan membuat grup di direktori /etc/sudoers.d, misalnya:

    %sapagent_snapshot_sudoers ALL=(ALL:ALL) NOPASSWD:/sbin/lvdisplay, /sbin/vgscan, /sbin/dmsetup, /sbin/lvscan, /usr/sbin/xfs_freeze, /usr/bin/google_cloud_sap_agent

Membuat cadangan berbasis snapshot disk

  • Guna membuat cadangan berbasis snapshot disk untuk volume /hana/data dari database SAP HANA Anda, jalankan perintah hanadiskbackup dari Agen untuk SAP Google Cloud:

    sudo /usr/bin/google_cloud_sap_agent hanadiskbackup \
        -project=DESTINATION_PROJECT_ID \
        -host=HANA_HOST_ADDRESS \
        -port=HANA_PORT_NUMBER \
        -sid=SID \
        -hana-db-user=HANA_USERNAME \
        -password-secret=HANA_USER_PWD_SECRET_NAME \
        -source-disk=SOURCE_DISK_NAME \
        -source-disk-zone=SOURCE_DISK_ZONE

    Ganti kode berikut:

    • DESTINATION_PROJECT_ID: ID project Google Cloud tempat Anda ingin membuat snapshot disk
    • HANA_HOST_ADDRESS: nama host atau alamat IP instance VM Compute Engine yang menghosting database SAP HANA Anda

      Dalam sistem ketersediaan tinggi (HA), tentukan nama host atau alamat IP host lokal di node SAP HANA utama. Jangan gunakan IP virtual (VIP) yang digunakan di cluster untuk mengidentifikasi node utama. Dalam deployment pemulihan bencana (DR), tentukan nama host atau alamat IP host lokal di instance SAP HANA utama.

    • HANA_PORT_NUMBER: port SAP HANA yang menerima permintaan pencadangan dan pemulihan

    • SID: ID sistem (SID) SAP dari sistem SAP HANA Anda

    • HANA_USERNAME: nama pengguna database SAP HANA yang ingin Anda buat cadangannya

    • HANA_USER_PWD_SECRET_NAME: jika Anda menggunakan Secret Manager untuk menyimpan sandi pengguna database SAP HANA, tentukan nama rahasia yang sesuai

    • SOURCE_DISK_NAME: nama volume Persistent Disk atau Hyperdisk yang menghosting volume /hana/data

    • SOURCE_DISK_ZONE: nama zona tempat disk yang menghosting volume /hana/data di-deploy

    Tabel berikut menjelaskan argumen yang didukung oleh perintah hanadiskbackup:

    Argumen Deskripsi
    -port Tentukan port SAP HANA yang menerima permintaan pencadangan dan pemulihan.
    -sid Tentukan ID sistem (SID) SAP dari sistem SAP HANA Anda.
    -hana-db-user Tentukan nama pengguna database SAP HANA yang ingin Anda buat cadangannya.
    -password

    Tentukan sandi pengguna database SAP HANA yang Anda gunakan untuk membuat cadangan.

    Jangan tentukan argumen ini jika Anda menggunakan argumen -password-secret. Sebaiknya gunakan -password-secret.

    -password-secret

    Opsional. Jika Anda menggunakan Secret Manager untuk menyimpan sandi pengguna database SAP HANA, tentukan nama rahasia yang sesuai.

    Di Secret Manager, pastikan Secret value, yang merupakan sandi, berisi minimal 8 karakter dan menyertakan setidaknya satu huruf besar, satu huruf kecil, dan satu angka.

    Jangan tentukan argumen ini jika Anda menggunakan argumen -password.

    -host Opsional. Tentukan alamat IP instance VM Compute Engine yang menghosting sistem SAP HANA Anda. Nilai defaultnya adalah localhost.
    -project Opsional. Tentukan ID project Google Cloud tempat Anda ingin membuat snapshot disk. Secara default, snapshot dibuat di project Google Cloud tempat sistem SAP HANA Anda berjalan.
    -abandon-prepared Opsional. Menentukan apakah akan mengabaikan snapshot disk yang ada atau tidak. Nilai defaultnya adalah false.
    -snapshot-name

    Opsional. Tentukan nama untuk snapshot disk yang Anda buat.

    Secara default, snapshot diberi nama dalam format berikut: snapshot-SOURCE_DISK_NAME-YYYYMMDD-HHMMSS.

    -source-disk Tentukan nama volume Persistent Disk atau Hyperdisk yang menghosting volume /hana/data Anda.
    -source-disk-zone Tentukan zone tempat disk yang menghosting volume /hana/data berada.
    -source-disk-key-file Opsional. Jika disk yang menghosting volume /hana/data dienkripsi oleh kunci enkripsi yang disediakan pelanggan, tentukan jalur absolut ke kunci tersebut.
    -storage-location Opsional. Tentukan multi-region Cloud Storage atau region Cloud Storage tempat Anda ingin menyimpan snapshot disk.
    -snapshot-description Opsional. Tentukan deskripsi untuk snapshot disk.
    -labels Opsional. Tentukan satu atau beberapa pasangan nilai-label yang ingin dikaitkan dengan snapshot disk yang Anda buat. Contoh: -labels="label1=value1,label2=value2".
    -send-metrics-to-monitoring Opsional. Menentukan apakah status eksekusi pembuatan snapshot dikirim ke Cloud Monitoring atau tidak. Nilai defaultnya adalah TRUE.
    -loglevel Opsional. Tentukan level logging untuk operasi pembuatan snapshot. Level logging default adalah info. Level log yang tersedia adalah: debug, info, warn, dan error.

Memverifikasi snapshot disk

Anda dapat memastikan bahwa snapshot disk telah dibuat menggunakan opsi berikut:

  • Di Konsol Google Cloud, buka halaman Snapshot Compute Engine, lalu filter entri menggunakan nama disk atau snapshot.

    Buka Snapshot

  • Atau, Anda juga dapat melihat detail snapshot disk dalam file log Agent for SAP Google Cloud berikut:

    /var/log/google-cloud-sap-agent/hanadiskbackup.log

Tinjau katalog cadangan SAP HANA

Selain membuat snapshot disk, perintah hanadiskbackup juga membuat entri untuk snapshot dalam katalog cadangan SAP HANA Anda. Berikut adalah contoh kueri SQL untuk melihat entri snapshot disk dalam katalog cadangan SAP HANA:

SELECT BACKUP_ID, STATE_NAME, COMMENT FROM M_BACKUP_CATALOG WHERE ENTRY_TYPE_NAME = 'data snapshot'

Outputnya mirip dengan contoh berikut:

BACKUP_ID,STATE_NAME,COMMENT
BACKUP_ID,"successful","snapshot-SOURCE_DISK_NAME-YYYYMMDD-HHMMMSS"

Output ini mencakup nilai-nilai berikut:

  • BACKUP_ID: ID cadangan yang ditetapkan ke snapshot disk dalam katalog cadangan SAP HANA Anda
  • SOURCE_DISK_NAME: nama disk yang menghosting volume /hana/data Anda, yang snapshot-nya Anda buat
  • YYYYMMDD-HHMMMSS: tanggal dan waktu saat snapshot dibuat

Lakukan pemulihan menggunakan snapshot disk

Untuk melakukan pemulihan berbasis snapshot disk menggunakan Agent for SAP dari Google Cloud, lihat petunjuk untuk skenario Anda:

Memulihkan database untuk sistem peningkatan skala

Untuk memulihkan database untuk sistem peningkatan skala SAP HANA yang di-deploy di Google Cloud, selesaikan langkah-langkah berikut:

  1. Pulihkan disk yang menghosting volume /hana/data dengan menjalankan perintah hanadiskrestore agen:

    sudo /usr/bin/google_cloud_sap_agent hanadiskrestore \
        -project=SOURCE_PROJECT_ID \
        -sid=SID \
        -source-snapshot=SOURCE_SNAPSHOT_NAME \
        -data-disk-name=SOURCE_DISK_NAME \
        -data-disk-zone=SOURCE_DISK_ZONE \
        -new-disk-type=NEW_DISK_TYPE \
        -new-disk-name=NEW_DISK_NAME

    Ganti kode berikut:

    • SOURCE_PROJECT_ID: ID project Google Cloud tempat snapshot disk berada
    • SID: ID sistem (SID) SAP dari sistem SAP HANA Anda
    • SOURCE_SNAPSHOT_NAME: nama snapshot disk yang digunakan untuk membuat disk baru
    • SOURCE_DISK_NAME: nama disk sumber yang menghosting volume /hana/data Anda
    • SOURCE_DISK_ZONE: nama zona tempat disk sumber di-deploy

    Untuk mengetahui informasi tentang argumen yang dapat Anda gunakan dengan perintah hanadiskrestore, lihat Argumen yang didukung untuk pemulihan disk.

  2. Pulihkan database SAP HANA Anda menggunakan opsi yang diperlukan:

    Pulihkan ke waktu snapshot

    Untuk memulihkan database SAP HANA dengan memulihkannya ke waktu saat snapshot disk dibuat, ikuti langkah-langkah berikut:

    1. Beralih ke pengguna SIDadm:
      su - SID_LCadm

      Ganti SID_LC dengan SID sistem SAP HANA Anda. Gunakan huruf kecil untuk setiap huruf.

    2. Pulihkan database sistem dengan menjalankan perintah berikut:
      HDBSettings.sh recoverSys.py --command="RECOVER DATA USING SNAPSHOT CLEAR LOG;"
    3. Menghubungkan ke database sistem. Misalnya, Anda dapat menjalankan perintah berikut:
      hdbsql -d SYSTEMDB -u system -p "SYSTEM_DB_PASSWORD" -i INSTANCE_NUMBER

      Ganti kode berikut:

      • SYSTEM_DB_PASSWORD: sandi database sistem Anda
      • INSTANCE_NUMBER: nomor instance SAP HANA Anda
    4. Pulihkan database tenant dengan menjalankan perintah berikut untuk setiap database tenant:
      RECOVER DATA FOR TENANT_SID USING SNAPSHOT CLEAR LOG

      Ganti TENANT_SID dengan SID database tenant.

    Memulihkan ke titik waktu tertentu

    Untuk memulihkan database SAP HANA Anda dengan memulihkannya ke titik waktu tertentu, ikuti langkah-langkah berikut:

    1. Pastikan Anda telah membuat cadangan untuk volume /hana/log di Cloud Storage dengan menggunakan fitur Backint dari Agen untuk SAP Google Cloud. Untuk mengetahui informasi selengkapnya tentang fitur ini, lihat Pencadangan dan pemulihan berbasis Backint untuk SAP HANA.
    2. Beralih ke pengguna SIDadm:
      su - SID_LCadm

      Ganti SID_LC dengan SID sistem SAP HANA Anda. Gunakan huruf kecil untuk setiap huruf.

    3. Pulihkan database sistem dengan menjalankan perintah berikut:
      HDBSettings.sh recoverSys.py --command "RECOVER DATABASE UNTIL TIMESTAMP 'YYYY-MM-DD HH:MM:SS' CLEAR LOG USING SNAPSHOT"
    4. Menghubungkan ke database sistem. Misalnya, Anda dapat menjalankan perintah berikut:
      hdbsql -d SYSTEMDB -u system -p "SYSTEM_DB_PASSWORD" -i INSTANCE_NUMBER

      Ganti kode berikut:

      • SYSTEM_DB_PASSWORD: sandi database sistem Anda
      • INSTANCE_NUMBER: nomor instance SAP HANA Anda
    5. Pulihkan database tenant dengan menjalankan perintah berikut untuk setiap database tenant:
      RECOVER DATABASE FOR TENANT_SID UNTIL TIMESTAMP '2099-12-31 12:00:00' CLEAR LOG USING SNAPSHOT

      Ganti TENANT_SID dengan SID database tenant.

Argumen yang didukung untuk pemulihan disk

Tabel berikut menjelaskan argumen yang didukung oleh perintah hanadiskrestore agen:

Argumen Deskripsi
-sid Tentukan ID sistem (SID) SAP dari sistem SAP HANA Anda.
-data-disk-name Tentukan nama disk sumber yang menghosting volume /hana/data.
-data-disk-zone Tentukan zona tempat disk sumber yang menghosting volume /hana/data di-deploy.
-source-snapshot Tentukan nama snapshot disk yang akan digunakan untuk memulihkan disk yang menghosting volume data SAP HANA Anda.
-new-disk-name Tentukan nama yang ingin Anda tetapkan untuk disk baru.
-project Opsional. Tentukan ID project Google Cloud tempat snapshot disk sumber berada. Secara default, snapshot dibuat di project Google Cloud tempat sistem SAP HANA Anda berjalan.
-new-disk-type

Opsional. Tentukan jenis Persistent Disk atau Hyperdisk yang ingin Anda buat. Secara default, disk baru memiliki jenis yang sama dengan disk sumber.

Pastikan Anda menentukan jenis disk berbasis SSD yang disertifikasi oleh SAP untuk digunakan dengan SAP HANA. Untuk mengetahui informasi selengkapnya, lihat Jenis disk yang didukung.

-hana-sidadm Opsional. Tentukan SIDadm - pengguna sistem operasi dari sistem SAP HANA Anda.
-force-stop-hana Opsional. Jika Anda ingin menghentikan SAP HANA secara paksa sebelum memulai operasi pemulihan, tentukan argumen ini dan tetapkan nilainya ke true. Nilai defaultnya adalah false.
-provisioned-iops Opsional. Jika Anda membuat volume Hyperdisk, tentukan IOPS (operasi input/output per detik) yang harus ditangani.
-provisioned-throughput Opsional. Jika Anda membuat volume Hyperdisk, tentukan throughput yang harus didukung.
-disk-size-gb

Opsional. Tentukan ukuran disk baru, dalam GB. Secara default, disk baru memiliki ukuran yang sama dengan disk lama.

Disk baru tidak boleh berukuran lebih kecil dari disk yang ada.

-loglevel Opsional. Tentukan level logging untuk semua tindakan yang dilakukan oleh perintah hanadiskrestore. Level logging default adalah info. Level log yang tersedia adalah: debug, info, warn, dan error.

Memulihkan database untuk sistem HA peningkatan skala

Guna memulihkan database untuk sistem peningkatan skala SAP HANA yang di-deploy di cluster ketersediaan tinggi (HA) di Google Cloud, selesaikan langkah-langkah berikut:

  1. Pastikan Anda memiliki snapshot disk yang menghosting volume /hana/data di node SAP HANA utama Anda.

  2. Sebagai pengguna root, masukkan cluster HA dalam mode pemeliharaan. Jika Anda menggunakan Alat pacu jantung, jalankan perintah berikut:

    RHEL

    pcs property set maintenance-mode=true

    SLES

    crm configure property maintenance-mode=true
  3. Hentikan instance database SAP HANA dengan menjalankan perintah berikut pada node utama dan standby cluster HA Anda:

    HDB stop
  4. Beralihlah ke node utama sistem SAP HANA HA Anda.

  5. Pulihkan disk yang menghosting volume /hana/data dengan menjalankan perintah hanadiskrestore agen:

    sudo /usr/bin/google_cloud_sap_agent hanadiskrestore \
        -project=SOURCE_PROJECT_ID \
        -sid=SID \
        -source-snapshot=SOURCE_SNAPSHOT_NAME \
        -data-disk-name=SOURCE_DISK_NAME \
        -data-disk-zone=SOURCE_DISK_ZONE \
        -new-disk-type=NEW_DISK_TYPE \
        -new-disk-name=NEW_DISK_NAME

    Ganti kode berikut:

    • SOURCE_PROJECT_ID: ID project Google Cloud tempat snapshot disk berada
    • SID: ID sistem (SID) SAP dari sistem SAP HANA Anda
    • SOURCE_SNAPSHOT_NAME: nama snapshot disk yang digunakan untuk membuat disk baru
    • SOURCE_DISK_NAME: nama disk sumber yang menghosting volume /hana/data Anda
    • SOURCE_DISK_ZONE: nama zona tempat disk sumber di-deploy

    Untuk mengetahui informasi tentang argumen yang dapat Anda gunakan dengan perintah hanadiskrestore, lihat Argumen yang didukung untuk pemulihan disk.

  6. Batalkan pendaftaran node sekunder sistem SAP HANA HA Anda:

    hdbnsutil -sr_unregister
  7. Pada node utama sistem SAP HANA HA, nonaktifkan replikasi sistem SAP HANA:

    hdbnsutil -sr_disable
  8. Pada node utama, pulihkan database SAP HANA Anda menggunakan opsi yang diperlukan:

    Pulihkan ke waktu snapshot

    Untuk memulihkan database SAP HANA dengan memulihkannya ke waktu saat snapshot disk dibuat, ikuti langkah-langkah berikut:

    1. Beralih ke pengguna SIDadm:
      su - SID_LCadm

      Ganti SID_LC dengan SID sistem SAP HANA Anda. Gunakan huruf kecil untuk setiap huruf.

    2. Pulihkan database sistem dengan menjalankan perintah berikut:
      HDBSettings.sh recoverSys.py --command="RECOVER DATA USING SNAPSHOT CLEAR LOG;"
    3. Menghubungkan ke database sistem. Misalnya, Anda dapat menjalankan perintah berikut:
      hdbsql -d SYSTEMDB -u system -p "SYSTEM_DB_PASSWORD" -i INSTANCE_NUMBER

      Ganti kode berikut:

      • SYSTEM_DB_PASSWORD: sandi database sistem Anda
      • INSTANCE_NUMBER: nomor instance SAP HANA Anda
    4. Pulihkan database tenant dengan menjalankan perintah berikut untuk setiap database tenant:
      RECOVER DATA FOR TENANT_SID USING SNAPSHOT CLEAR LOG

      Ganti TENANT_SID dengan SID database tenant.

    Memulihkan ke titik waktu tertentu

    Untuk memulihkan database SAP HANA Anda dengan memulihkannya ke titik waktu tertentu, ikuti langkah-langkah berikut:

    1. Pastikan Anda telah membuat cadangan untuk volume /hana/log di Cloud Storage dengan menggunakan fitur Backint dari Agen untuk SAP Google Cloud. Untuk mengetahui informasi selengkapnya tentang fitur ini, lihat Pencadangan dan pemulihan berbasis Backint untuk SAP HANA.
    2. Beralih ke pengguna SIDadm:
      su - SID_LCadm

      Ganti SID_LC dengan SID sistem SAP HANA Anda. Gunakan huruf kecil untuk setiap huruf.

    3. Pulihkan database sistem dengan menjalankan perintah berikut:
      HDBSettings.sh recoverSys.py --command "RECOVER DATABASE UNTIL TIMESTAMP 'YYYY-MM-DD HH:MM:SS' CLEAR LOG USING SNAPSHOT"
    4. Menghubungkan ke database sistem. Misalnya, Anda dapat menjalankan perintah berikut:
      hdbsql -d SYSTEMDB -u system -p "SYSTEM_DB_PASSWORD" -i INSTANCE_NUMBER

      Ganti kode berikut:

      • SYSTEM_DB_PASSWORD: sandi database sistem Anda
      • INSTANCE_NUMBER: nomor instance SAP HANA Anda
    5. Pulihkan database tenant dengan menjalankan perintah berikut untuk setiap database tenant:
      RECOVER DATABASE FOR TENANT_SID UNTIL TIMESTAMP '2099-12-31 12:00:00' CLEAR LOG USING SNAPSHOT

      Ganti TENANT_SID dengan SID database tenant.

  9. Pada node utama, aktifkan replikasi sistem SAP HANA:

    hdbnsutil -sr_enable --name=PRIMARY_SITE_NAME
  10. Daftarkan ulang node standby dengan node utama:

    hdbnsutil -sr_register
       --name=SECONDARY_SITE_NAME
       --remoteHost=PRIMARY_HOST_NAME
       --remoteInstance=INSTANCE_NUMBER
       --replicationMode=sync
       --operationMode=logreplay
  11. Pastikan database di node standby disinkronkan sepenuhnya dengan database di node utama.

  12. Sebagai pengguna root, keluar dari mode pemeliharaan cluster dengan ketersediaan tinggi (HA). Jika Anda menggunakan Alat pacu jantung, jalankan perintah berikut:

    RHEL

    pcs property set maintenance-mode=false

    SLES

    crm configure property maintenance-mode=false

Memulihkan database untuk deployment DR peningkatan skala

Untuk memulihkan database bagi sistem peningkatan skala SAP HANA yang di-deploy dengan solusi pemulihan dari bencana di Google Cloud, selesaikan langkah-langkah berikut:

  1. Hentikan database SAP HANA Anda dengan menjalankan perintah berikut pada instance utama dan standby dari deployment DR Anda:

    HDB stop
  2. Beralihlah ke instance utama deployment SAP HANA DR Anda.

  3. Pulihkan disk yang menghosting volume /hana/data dengan menjalankan perintah hanadiskrestore agen:

    sudo /usr/bin/google_cloud_sap_agent hanadiskrestore \
        -project=SOURCE_PROJECT_ID \
        -sid=SID \
        -source-snapshot=SOURCE_SNAPSHOT_NAME \
        -data-disk-name=SOURCE_DISK_NAME \
        -data-disk-zone=SOURCE_DISK_ZONE \
        -new-disk-type=NEW_DISK_TYPE \
        -new-disk-name=NEW_DISK_NAME

    Ganti kode berikut:

    • SOURCE_PROJECT_ID: ID project Google Cloud tempat snapshot disk berada
    • SID: ID sistem (SID) SAP dari sistem SAP HANA Anda
    • SOURCE_SNAPSHOT_NAME: nama snapshot disk yang digunakan untuk membuat disk baru
    • SOURCE_DISK_NAME: nama disk sumber yang menghosting volume /hana/data Anda
    • SOURCE_DISK_ZONE: nama zona tempat disk sumber di-deploy

    Untuk mengetahui informasi tentang argumen yang dapat Anda gunakan dengan perintah hanadiskrestore, lihat Argumen yang didukung untuk pemulihan disk.

  4. Pada instance utama, nonaktifkan replikasi sistem SAP HANA:

    hdbnsutil -sr_disable
  5. Pada instance utama, pulihkan database SAP HANA Anda menggunakan opsi yang diperlukan:

    Pulihkan ke waktu snapshot

    Untuk memulihkan database SAP HANA dengan memulihkannya ke waktu saat snapshot disk dibuat, ikuti langkah-langkah berikut:

    1. Beralih ke pengguna SIDadm:
      su - SID_LCadm

      Ganti SID_LC dengan SID sistem SAP HANA Anda. Gunakan huruf kecil untuk setiap huruf.

    2. Pulihkan database sistem dengan menjalankan perintah berikut:
      HDBSettings.sh recoverSys.py --command="RECOVER DATA USING SNAPSHOT CLEAR LOG;"
    3. Menghubungkan ke database sistem. Misalnya, Anda dapat menjalankan perintah berikut:
      hdbsql -d SYSTEMDB -u system -p "SYSTEM_DB_PASSWORD" -i INSTANCE_NUMBER

      Ganti kode berikut:

      • SYSTEM_DB_PASSWORD: sandi database sistem Anda
      • INSTANCE_NUMBER: nomor instance SAP HANA Anda
    4. Pulihkan database tenant dengan menjalankan perintah berikut untuk setiap database tenant:
      RECOVER DATA FOR TENANT_SID USING SNAPSHOT CLEAR LOG

      Ganti TENANT_SID dengan SID database tenant.

    Memulihkan ke titik waktu tertentu

    Untuk memulihkan database SAP HANA Anda dengan memulihkannya ke titik waktu tertentu, ikuti langkah-langkah berikut:

    1. Pastikan Anda telah membuat cadangan untuk volume /hana/log di Cloud Storage dengan menggunakan fitur Backint dari Agen untuk SAP Google Cloud. Untuk mengetahui informasi selengkapnya tentang fitur ini, lihat Pencadangan dan pemulihan berbasis Backint untuk SAP HANA.
    2. Beralih ke pengguna SIDadm:
      su - SID_LCadm

      Ganti SID_LC dengan SID sistem SAP HANA Anda. Gunakan huruf kecil untuk setiap huruf.

    3. Pulihkan database sistem dengan menjalankan perintah berikut:
      HDBSettings.sh recoverSys.py --command "RECOVER DATABASE UNTIL TIMESTAMP 'YYYY-MM-DD HH:MM:SS' CLEAR LOG USING SNAPSHOT"
    4. Menghubungkan ke database sistem. Misalnya, Anda dapat menjalankan perintah berikut:
      hdbsql -d SYSTEMDB -u system -p "SYSTEM_DB_PASSWORD" -i INSTANCE_NUMBER

      Ganti kode berikut:

      • SYSTEM_DB_PASSWORD: sandi database sistem Anda
      • INSTANCE_NUMBER: nomor instance SAP HANA Anda
    5. Pulihkan database tenant dengan menjalankan perintah berikut untuk setiap database tenant:
      RECOVER DATABASE FOR TENANT_SID UNTIL TIMESTAMP '2099-12-31 12:00:00' CLEAR LOG USING SNAPSHOT

      Ganti TENANT_SID dengan SID database tenant.

  6. Pada instance utama, aktifkan replikasi sistem SAP HANA:

    hdbnsutil -sr_enable --name=PRIMARY_SITE_NAME
  7. Daftarkan instance standby dengan instance utama:

    hdbnsutil -sr_register
       --name=SECONDARY_SITE_NAME
       --remoteHost=PRIMARY_HOST_NAME
       --remoteInstance=INSTANCE_NUMBER
       --replicationMode=sync
       --operationMode=logreplay
  8. Pastikan database dalam instance standby disinkronkan sepenuhnya dengan database di instance utama.

Melakukan penyalinan sistem atau pemuatan ulang sistem

Untuk menggunakan cadangan berbasis snapshot disk dari sistem SAP HANA guna melakukan pemulihan di sistem SAP HANA lainnya, selesaikan langkah-langkah berikut:

  1. Di sistem sumber, buat cadangan berbasis snapshot dengan menjalankan perintah hanadiskbackup agen. Untuk mengetahui petunjuknya, lihat Membuat cadangan berbasis snapshot disk.
  2. Jika SID sistem sumber dan target berbeda, ganti nama direktori /hana/data/SID dalam sistem sumber agar cocok dengan sistem target:

    mv /hana/data/SOURCE_SID /hana/data/TARGET_SID

    Ganti kode berikut:

    • SOURCE_SID: SID sistem SAP HANA sumber
    • TARGET_SID: SID dari sistem SAP HANA target
  3. Dalam sistem target, pulihkan disk yang menghosting volume /hana/data dengan menjalankan perintah hanadiskrestore agen.

  4. Dalam sistem target, pulihkan database sistem:

    HDBSettings.sh recoverSys.py --command "RECOVER DATABASE UNTIL TIMESTAMP '2099-12-31 12:00:00' CLEAR LOG USING SOURCE 'SYSTEMDB@SOURCE_SID' USING CATALOG BACKINT USING SNAPSHOT"
  5. Jika ingin database tenant Anda memiliki SID sistem sumber, Anda dapat mengganti namanya dengan mengikuti petunjuk dalam dokumen SAP HANA Mengganti Nama Database Tenant.

  6. Dalam sistem target, hubungkan ke database sistem. Misalnya, Anda dapat menjalankan perintah berikut:

    hdbsql -d SYSTEMDB -u system -p "SYSTEM_DB_PASSWORD" -i INSTANCE_NUMBER

    Ganti kode berikut:

    • SYSTEM_DB_PASSWORD: sandi database sistem Anda
    • INSTANCE_NUMBER: nomor instance SAP HANA Anda
  7. Dalam sistem target, pulihkan database tenant dengan menjalankan perintah berikut untuk setiap database tenant:

    RECOVER DATABASE FOR TARGET_SID UNTIL TIMESTAMP '2023-12-08 23:59:00' CLEAR LOG USING SOURCE 'TARGET_SID@SOURCE_SID' USING CATALOG BACKINT USING SNAPSHOT

Memvalidasi konsistensi snapshot

Bagian ini menjelaskan cara memvalidasi konsistensi data dalam snapshot disk menggunakan alat hdbpersdiag dari SAP. Untuk mengetahui informasi tentang praktik terbaik lain yang direkomendasikan oleh Google Cloud untuk operasi pencadangan dan pemulihan berbasis snapshot disk, lihat Praktik terbaik.

Untuk memvalidasi konsistensi snapshot, selesaikan langkah-langkah berikut:

  1. Buat disk dari snapshot yang Anda buat menggunakan perintah hanadiskbackup agen. Gunakan perintah gcloud compute disks create:

    gcloud compute disks create DISK_NAME \
       --size=SIZE \
       --source-snapshot=SNAPSHOT_NAME \
       --type=DISK_TYPE \
       --zone=ZONE
    

    Ganti kode berikut:

    • DISK_NAME: nama disk sementara
    • SIZE: ukuran disk sementara
    • SNAPSHOT_NAME: nama snapshot sumber
    • DISK_TYPE: jenis disk untuk disk sementara
    • ZONE: zona Compute Engine tempat Anda ingin men-deploy disk sementara
  2. Pasang disk ke VM selain host SAP HANA Anda. Gunakan gcloud compute instances attach-diskperintah:

    gcloud compute instances attach-disk VM_INSTANCE_NAME \
       --disk=DISK_NAME \
       --zone=ZONE
    

    Ganti kode berikut:

    • VM_INSTANCE_NAME: nama VM tempat Anda ingin men-deploy disk yang dibuat
    • DISK_NAME: nama disk yang Anda buat
    • ZONE: zona Compute Engine tempat VM Anda di-deploy
  3. Hubungkan ke VM menggunakan metode SSH pilihan Anda.

  4. Pasang disk baru sebagai sistem file sementara:

    1. Di tingkat OS, temukan grup volume yang tidak memiliki volume logis aktif:

      vgdisplay
      

      Outputnya mirip dengan contoh berikut:

      --- Volume group ---
      VG Name               vg_hana_data
      System ID
      Format                lvm2
      Metadata Areas        1
      Metadata Sequence No  2
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                1
      Open LV               0
      Max PV                0
      Cur PV                1
      Act PV                1
      VG Size               250.00 GiB
      PE Size               4.00 MiB
      Total PE              63999
      Alloc PE / Size       63999 / 250.00 GiB
      Free  PE / Size       0 / 0
      VG UUID               Fa52zl-AROR-LH2k-aG4z-LbrB-cvTz-TZhEfR
    2. Ganti nama grup volume menggunakan UUID VG. Dalam contoh sebelumnya, nilainya adalah Fa52zl-AROR-LH2k-aG4z-LbrB-cvTz-TZhEfR.

      vgrename Fa52zl-AROR-LH2k-aG4z-LbrB-cvTz-TZhEfR vg_hana_data_temp
      
    3. Aktifkan grup volume dan volume logis:

      vgchange -a y vg_hana_data_temp
      lvchange -a y /dev/vg_hana_data_temp/data
      
    4. Pasang volume logis dalam sistem file sementara, misalnya, /hana/data_temp:

      mkdir /hana/data_temp
      mount /dev/vg_hana_data_temp/data /hana/data_temp
      
    5. Pastikan semua disk terpasang dengan benar:

      lsblk
      

      Outputnya mirip dengan contoh berikut:

      NAME                     MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
      sda                        8:0    0   30G  0 disk
      ├─sda1                     8:1    0    2M  0 part
      ├─sda2                     8:2    0   20M  0 part /boot/efi
      └─sda3                     8:3    0   30G  0 part /
      sdb                        8:16   0  350G  0 disk
      └─vg_hana_data_temp-data 254:5    0  250G  0 lvm  /hana/data_temp
      sdc                        8:32   0  104G  0 disk
      └─vg_hana_log-log        254:2    0  104G  0 lvm  /hana/log
      sdd                        8:48   0  208G  0 disk
      └─vg_hana_shared-shared  254:0    0  208G  0 lvm  /hana/shared
      sde                        8:64   0   32G  0 disk
      └─vg_hana_usrsap-usrsap  254:3    0   32G  0 lvm  /usr/sap
      sdf                        8:80   0  416G  0 disk
      └─vg_hanabackup-backup   254:4    0  416G  0 lvm  /hanabackup
      sdh                        8:112  0  250G  0 disk
      └─vg_hana_data-data      254:1    0  250G  0 lvm  /hana/data
  5. Sebagai pengguna SIDadm, jalankan alat hdbpersdiag untuk volume data yang disertakan dalam sistem file sementara:

    for directory in $(find /hana/data_temp/SID/mnt00001/hdb* -type d); do hdbpersdiag -c -e 'check all' $directory; done
    
  6. Verifikasi output dari alat hdbpersdiag.

  7. Jika berencana melakukan pemeriksaan konsistensi ini di masa mendatang, Anda dapat membiarkan grup volume baru sebagaimana adanya. Jika tidak, hapus grup volume tersebut.

  8. Melepaskan disk dari VM. Gunakan gcloud compute instances detach-diskperintah:

    VM_INSTANCE_NAME \
       --disk=DISK_NAME \
       --zone=ZONE
    
  9. Hapus disk. Gunakan gcloud compute disks deleteperintah:

    gcloud compute disks delete DISK_NAME \
       --zone=ZONE
    

Pemecahan masalah

Meskipun Agent for SAP dari Google Cloud dirancang untuk menangani sebagian besar masalah yang dapat terjadi selama operasi pencadangan dan pemulihan berbasis snapshot disk untuk SAP HANA, ada beberapa skenario yang memerlukan intervensi manual.

Untuk memecahkan masalah terkait fitur snapshot disk pada Agen untuk SAP Google Cloud, lihat Masalah dengan operasi pencadangan atau pemulihan berbasis snapshot disk.

Dapatkan dukungan

Jika Anda memerlukan bantuan untuk menyelesaikan masalah terkait Agent for SAP dari Google Cloud, kumpulkan informasi diagnostik yang diperlukan dan hubungi Cloud Customer Care. Untuk mengetahui informasi selengkapnya, lihat Agent for SAP untuk informasi diagnostik SAP HANA.