Menggunakan Database Migration Service API

Ringkasan

Database Migration Service menyediakan REST API untuk mengelola profil koneksi dan tugas migrasi Anda secara terprogram. REST API ditentukan oleh resource yang terkait dengan pembuatan dan pengelolaan profil koneksi serta tugas migrasi. Untuk mengetahui detail tentang semua resource dan metodenya, lihat Referensi Database Migration Service API.

Saat mengirim permintaan langsung ke Database Migration Service REST API, Anda harus membuat bentuk permintaan yang benar, mengizinkan permintaan sebagai pengguna terautentikasi, dan memproses respons yang ditampilkan. Banyak tugas dalam dokumentasi ini memberikan contoh API menggunakan cURL.

Untuk contoh penggunaan API lainnya, lihat halaman permintaan di Referensi Database Migration Service API. Setiap halaman memiliki contoh panggilan API dalam beberapa bahasa pemrograman, serta Explorer khusus permintaan untuk membantu Anda melihat apa yang ada dalam permintaan yang dibuat dengan baik dan apa yang diharapkan dalam respons.

Anda juga menggunakan Database Migration Service API secara tidak langsung saat menggunakan salah satu cara berikut untuk mengelola instance:

Keuntungan menggunakan metode ini, terutama konsol Google Cloud , adalah metode ini dapat sangat menyederhanakan pengelolaan profil koneksi dan tugas migrasi Anda (bergantung pada kasus penggunaan Anda). Jika Anda baru memulai Database Migration Service, sebaiknya mulai dengan salah satu alat ini terlebih dahulu sebelum menggunakan REST API secara langsung.

Mengaktifkan API

Untuk menggunakan Database Migration Service API, Anda harus mengaktifkannya:

Konsol

  1. Aktifkan Database Migration Service API.
  2. Pilih project Anda.
  3. Pilih Lanjutkan.

gcloud

  1. Masukkan perintah berikut untuk menampilkan project ID untuk project Google Cloud Anda:
    gcloud projects list
  2. Setel project default Anda:
    gcloud config set project YOUR_PROJECT_ID
  3. Aktifkan Cloud SQL Admin API:
    gcloud services enable datamigration.googleapis.com

Izin

Anda harus memiliki izin yang diperlukan untuk menggunakan Database Migration Service API. Izin ini mencakup:

  • Admin Migrasi Database: Dengan izin ini, pengguna mendapatkan akses ke semua resource Database Migration Service yang digunakan untuk mengelola profil koneksi dan tugas migrasi.
  • Pelihat Migrasi Database: Dengan izin ini, pengguna memiliki akses hanya baca ke profil koneksi dan tugas migrasi di Database Migration Service.
  • Admin Cloud SQL: Dengan izin ini, pengguna dapat membuat dan mengelola profil koneksi dan tugas migrasi untuk Cloud SQL di Database Migration Service.

Google Cloud menawarkan Identity and Access Management (IAM), yang memungkinkan Anda memberikan akses yang lebih terperinci ke resource Google Cloud tertentu dan mencegah akses yang tidak diinginkan ke resource lain. Anda dapat memperoleh dan menetapkan izin untuk Database Migration Service menggunakan konsol Google Cloud, metode IAM API, atau Google Cloud CLI. Untuk mengetahui informasi selengkapnya, lihat Memberikan, mengubah, dan mencabut akses ke resource.

Contoh API

Anda dapat melihat contoh penggunaan Database Migration Service API dengan cURL di halaman berikut dalam dokumentasi Database Migration Service:

  • Mengelola profil koneksi menggunakan API
  • Mengelola tugas migrasi menggunakan API

Halaman ini muncul di panduan Cara penggunaan untuk MySQL, PostgreSQL, dan SQL Server.

Menyediakan data JSON dari file

Saat menggunakan API dengan cURL, Anda memberikan nilai properti menggunakan baris perintah. Jika Anda bekerja dengan nilai sensitif seperti sandi atau kunci keamanan, memberikan nilai tersebut di command line menimbulkan risiko keamanan. Untuk meningkatkan keamanan, Anda dapat membuat file yang berisi data JSON untuk panggilan API, dan memberikan jalur ke file tersebut di command line.

Untuk memberikan data JSON ke panggilan API cURL dari file:

  1. Buat file yang berisi semua yang diapit tanda petik tunggal untuk kolom --data.

    Sertakan tanda kurung kurawal, tetapi jangan sertakan tanda kutip tunggal.

  2. Di command line, berikan jalur ke file, yang diawali dengan karakter @, sebagai parameter --data:

    --data @<path-to-file>/<filename>

    Misalnya, untuk membuat profil koneksi untuk database sumber Cloud SQL, Anda dapat membuat file bernama request.json dengan konten berikut:

    {
      "displayName": "my Cloud SQL connection profile",
      "mysql": {
        "host": "10.11.12.13",
        "port": port-number-of-source-database,
        "username": "myusername",
        "password": "mypassword"
      }
    }
    

    Kemudian, Anda akan menggunakan perintah cURL berikut di command line:

    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
         --header 'Content-Type: application/json' \
         --data @./request.json \
         -X POST \
         https://datamigration.googleapis.com/v1/projects/myProject/locations/myLocation/connectionProfiles?connectionProfileId=myCloudSQLconnectionprofile

Bekerja dengan panggilan API yang berjalan lama

Beberapa panggilan API, seperti pembuatan objek, dapat memerlukan waktu beberapa saat untuk diselesaikan. Karena API bersifat asinkron, panggilan akan segera ditampilkan, meskipun operasi masih berlangsung. Jika panggilan API berikutnya menggunakan objek yang baru dibuat, Anda harus menunggu hingga operasi pertama selesai sebelum melanjutkan.

Anda dapat menggunakan Database Migration Service API untuk mengelola operasi. Hal ini mencakup:

Database Migration Service dan Google APIs Discovery Service

Google APIs Discovery Service adalah layanan yang dapat Anda gunakan untuk menemukan Google API. Misalnya, saat Anda menggunakan alat Google APIs Explorer , Anda menggunakan Discovery Service.

Di Discovery Service, Database Migration Service ditampilkan sebagai "datamigration" (misalnya: https://datamigration.googleapis.com/$discovery/rest?version=v1).