Halaman ini menjelaskan cara mengekspor dan mengimpor data ke instance Cloud SQL menggunakan file dump SQL.
Mengekspor dari Cloud SQL ke file dump SQL tidak didukung untuk SQL Server.
Sebelum memulai
Ekspor menggunakan resource database, tetapi tidak mengganggu operasi database normal, kecuali jika penyediaan instance kurang lengkap.
Untuk praktik terbaik, lihat Praktik Terbaik untuk Mengimpor dan Mengekspor Data.
Setelah menyelesaikan operasi impor, verifikasi hasilnya.
Mengekspor data dari Cloud SQL untuk SQL Server
Mengekspor dari Cloud SQL ke file dump SQL tidak didukung untuk SQL Server.Mengimpor data ke Cloud SQL untuk SQL Server
Peran dan izin yang diperlukan untuk mengimpor ke Cloud SQL untuk SQL Server
Untuk mengimpor data dari Cloud Storage ke Cloud SQL, pengguna yang memulai impor harus memiliki salah satu peran berikut:
- Peran Admin Cloud SQL
- Peran khusus,
yang mencakup izin berikut:
cloudsql.instances.get
cloudsql.instances.import
Selain itu, akun layanan untuk instance Cloud SQL harus memiliki salah satu peran berikut:
- Peran IAM
storage.objectAdmin
- Peran khusus, termasuk izin berikut:
storage.objects.get
storage.objects.list
(hanya untuk impor stripe)
Untuk mendapatkan bantuan terkait peran IAM, lihat Identity and Access Management.
Mengimpor file dump SQL ke Cloud SQL untuk SQL Server
File SQL adalah file teks biasa dengan urutan perintah SQL.
Dalam prosedur berikut, siapkan untuk menentukan database yang sudah ada untuk mengimpor file SQL Anda.
Konsol
-
Di konsol Google Cloud, buka halaman Instance Cloud SQL.
- Untuk membuka halaman Ringkasan instance, klik nama instance.
- Klik Import.
- Di bagian Pilih file yang ingin Anda impor data, masukkan jalur
ke bucket dan file dump SQL yang akan digunakan untuk impor, atau cari file yang sudah ada singkat
ini.
Anda dapat mengimpor file yang dikompresi (
.gz
) atau file yang tidak dikompresi (.sql
). - Untuk Format, pilih SQL.
Pilih database tempat Anda ingin mengimpor data.
Hal ini menyebabkan Cloud SQL menjalankan pernyataan
USE DATABASE
sebelum impor.Jika Anda ingin menentukan pengguna tertentu untuk melakukan impor, pilih pengguna.
Jika file impor Anda berisi pernyataan yang harus dilakukan oleh pengguna tertentu, gunakan kolom ini untuk menentukan pengguna tersebut.
- Klik Import untuk memulai impor.
gcloud
- Membuat bucket Cloud Storage.
Upload file ke bucket Anda.
Untuk bantuan dalam mengupload file ke bucket, lihat Mengupload objek.
- Menjelaskan instance tujuan impor:
gcloud sql instances describe INSTANCE_NAME
- Menyalin kolom
serviceAccountEmailAddress
. - Menggunakan
gcloud storage buckets add-iam-policy-binding
untuk memberikanstorage.objectAdmin
peran IAM ke akun layanan untuk bucket. Untuk mendapatkan bantuan terkait penetapan izin IAM, lihat Menggunakan izin IAM.gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \ --member=serviceAccount:SERVICE-ACCOUNT \ --role=roles/storage.objectAdmin
- Impor database:
gcloud sql import sql INSTANCE_NAME gs://BUCKET_NAME/IMPORT_FILE_NAME \ --database=DATABASE_NAME
Untuk informasi tentang penggunaan perintah
import sql
, lihat halaman referensi perintahsql import sql
.Jika perintah menampilkan error seperti
ERROR_RDBMS
, tinjau izinnya; kesalahan ini sering kali disebabkan oleh masalah izin. - Jika Anda tidak perlu mempertahankan izin IAM yang
telah ditetapkan sebelumnya, hapus menggunakan
gcloud storage buckets remove-iam-policy-binding
.
REST v1
- Membuat bucket Cloud Storage.
Upload file ke bucket Anda.
Untuk mendapatkan bantuan dalam mengupload file ke bucket, lihat Mengupload objek.
- Beri instance Anda peran IAM
legacyBucketWriter
danobjectViewer
untuk bucket Anda. Untuk mendapatkan bantuan terkait penetapan izin IAM, lihat Menggunakan izin IAM. - Impor file dump Anda:
Sebelum menggunakan salah satu data permintaan, buat pengganti berikut:
- project-id: ID project
- instance-id: ID instance
- bucket_name: Nama bucket Cloud Storage
- path_to_sql_file: Jalur ke file SQL
- database_name: Nama database di dalam instance Cloud SQL
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/import
Meminta isi JSON:
{ "importContext": { "fileType": "SQL", "uri": "gs://bucket_name/path_to_sql_file", "database": "database_name" } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Untuk mengetahui daftar lengkap parameter permintaan, lihat halaman instance:import. - Jika Anda tidak perlu mempertahankan izin IAM yang telah ditetapkan sebelumnya, hapus sekarang.
REST v1beta4
- Membuat bucket Cloud Storage.
Upload file ke bucket Anda.
Untuk bantuan dalam mengupload file ke bucket, lihat Mengupload objek.
- Berikan instance Anda peran IAM
storage.objectAdmin
untuk bucket Anda. Untuk mendapatkan bantuan terkait penetapan izin IAM, lihat Menggunakan izin IAM. - Impor file dump Anda:
Sebelum menggunakan salah satu data permintaan, buat pengganti berikut:
- project-id: ID project
- instance-id: ID instance
- bucket_name: Nama bucket Cloud Storage
- path_to_sql_file: Jalur ke file SQL
- database_name: Nama database di dalam instance Cloud SQL
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/import
Meminta isi JSON:
{ "importContext": { "fileType": "SQL", "uri": "gs://bucket_name/path_to_sql_file", "database": "database_name" } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Untuk mengetahui daftar lengkap parameter permintaan, lihat halaman instance:import. - Jika Anda tidak perlu mempertahankan izin IAM yang telah ditetapkan sebelumnya, hapus sekarang.
Langkah berikutnya
- Pelajari cara memeriksa status operasi impor dan ekspor.
- Pelajari lebih lanjut praktik terbaik untuk mengimpor dan mengekspor data.
- Mempelajari Cloud Storage lebih lanjut.
- Masalah umum untuk impor dan ekspor.