Halaman ini menjelaskan operasi pemulihan Spanner dan menjelaskan cara memulihkan database. Untuk mengetahui informasi selengkapnya tentang pemulihan database di Spanner, lihat Ringkasan pemulihan.
Anda dapat memulihkan database Spanner menggunakan cara berikut:
- Di konsol Google Cloud .
- Menggunakan Google Cloud CLI.
- Menggunakan library klien.
- Menggunakan API REST atau RPC.
Sebelum memulai
Contoh gcloud CLI di halaman ini membuat asumsi berikut:
- Anda telah menyiapkan gcloud CLI untuk digunakan dengan Spanner. Jika Anda baru menggunakan Google Cloud CLI dengan Spanner, lihat Mulai menggunakan Spanner menggunakan Google Cloud CLI.
- Anda telah mengonfigurasi Google Cloud CLI dengan project Anda. Contoh:
gcloud config set core/project PROJECT_ID
* You have an instance named `test-instance` and a database named `example-db`.-
Untuk mendapatkan izin yang diperlukan untuk memulihkan database dari cadangan, minta administrator Anda untuk memberi Anda peran IAM berikut pada instance:
-
Semua:
Cloud Spanner Restore Admin (
roles/spanner.restoreAdmin)
-
Semua:
Cloud Spanner Restore Admin (
Memulihkan database dari cadangan
Konsol
- Buka halaman Spanner Instances di konsol Google Cloud .
Buka halaman Spanner Instances
Klik instance yang berisi database untuk membuka halaman Ringkasan.
Klik database untuk membuka halaman Ringkasan.
Di panel navigasi, klik Backup/Restore.
Klik tombol Tindakan untuk cadangan yang Anda pilih, lalu pilih Pulihkan.
Isi formulir, lalu klik tombol Pulihkan.
Untuk memeriksa progres operasi, lihat indikator progres, seperti yang ditunjukkan di halaman operasi:
Jika operasi membutuhkan waktu terlalu lama, Anda dapat membatalkannya. Untuk mengetahui informasi selengkapnya, lihat Membatalkan operasi instance yang berjalan lama.
gcloud
Untuk memulihkan database, gunakan gcloud spanner
databases restore:
gcloud spanner databases restore --async \
--destination-instance=test-instance --destination-database=example-db-restored \
--source-instance=test-instance --source-backup=example-db-backup-6 \
--encryption_type=google-managed-encryptionCatatan penggunaan:
- Perintah akan segera ditampilkan karena adanya flag
--async. Tanpa flag, perintah akan menunggu hingga operasi pemulihan selesai. - Jika instance sumber dan tujuan berbeda, keduanya harus memiliki konfigurasi instance yang sama.
- Jika database tujuan sudah ada, operasi akan gagal.
- Kemungkinan nilai untuk
encryption_typeadalahUSE_DATABASE_ENCRYPTION,GOOGLE_DEFAULT_ENCRYPTION, atauCUSTOMER_MANAGED_ENCRYPTION. Jika menggunakanCUSTOMER_MANAGED_ENCRYPTION, Anda harus menentukankmsKeyName.
Library klien
Contoh kode berikut memulihkan database dari
pencadangan tertentu dan menunggu operasi pemulihan (operasi dengan
RestoreDatabaseMetadata) selesai. Database yang dipulihkan dibuat di instance yang sama dengan
cadangan. Setelah selesai, contoh akan mengambil dan mencetak beberapa informasi pemulihan dari database.
C++
C#
Go
Java
Node.js
PHP
Python
Ruby