Membuat dan mengelola database

Halaman ini berisi informasi tentang cara membuat, mencantumkan, dan menghapus database PostgreSQL pada instance Cloud SQL.

Instance yang baru dibuat memiliki database postgres .

Untuk informasi selengkapnya tentang database PostgreSQL, lihat Dokumentasi PostgreSQL.

Sebelum memulai

Sebelum menyelesaikan tugas di halaman ini, Anda harus sudah:

Jika berencana menggunakan klien psql untuk membuat atau mengelola database, Anda harus memiliki:

Membuat database pada instance Cloud SQL

Konsol

  1. Pada Konsol Google Cloud, buka halaman Instance Cloud SQL .

    Buka Instance Cloud SQL

  2. Untuk membuka halaman Ringkasan instance, klik nama instance.
  3. Pilih Database dari menu navigasi SQL.
  4. Klik Create database.
  5. Pada dialog New database, tentukan nama database.
  6. Klik Create.

gcloud

Untuk informasi selengkapnya, lihat gcloud sql databases create.

gcloud sql databases create DATABASE_NAME \
--instance=INSTANCE_NAME

Terraform

Untuk membuat database, gunakan resource Terraform .

resource "google_sql_database" "database" {
  name     = "my-database"
  instance = google_sql_database_instance.instance.name
}

Menerapkan perubahan

Untuk menerapkan konfigurasi Terraform di project Google Cloud, selesaikan langkah-langkah di bagian berikut.

Menyiapkan Cloud Shell

  1. Luncurkan Cloud Shell.
  2. Tetapkan project Google Cloud default tempat Anda ingin menerapkan konfigurasi Terraform.

    Anda hanya perlu menjalankan perintah ini sekali per project, dan dapat dijalankan di direktori mana pun.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Variabel lingkungan akan diganti jika Anda menetapkan nilai eksplisit dalam file konfigurasi Terraform.

Menyiapkan direktori

Setiap file konfigurasi Terraform harus memiliki direktorinya sendiri (juga disebut modul root).

  1. Di Cloud Shell, buat direktori dan file baru di dalam direktori tersebut. Nama file harus memiliki ekstensi .tf—misalnya main.tf. Dalam tutorial ini, file ini disebut sebagai main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Jika mengikuti tutorial, Anda dapat menyalin kode contoh di setiap bagian atau langkah.

    Salin kode contoh ke dalam main.tf yang baru dibuat.

    Atau, salin kode dari GitHub. Tindakan ini direkomendasikan jika cuplikan Terraform adalah bagian dari solusi menyeluruh.

  3. Tinjau dan ubah contoh parameter untuk diterapkan pada lingkungan Anda.
  4. Simpan perubahan Anda.
  5. Lakukan inisialisasi Terraform. Anda hanya perlu melakukan ini sekali per direktori.
    terraform init

    Secara opsional, untuk menggunakan versi penyedia Google terbaru, sertakan opsi -upgrade:

    terraform init -upgrade

Menerapkan perubahan

  1. Tinjau konfigurasi dan pastikan resource yang akan dibuat atau diupdate oleh Terraform sesuai yang Anda inginkan:
    terraform plan

    Koreksi konfigurasi jika diperlukan.

  2. Terapkan konfigurasi Terraform dengan menjalankan perintah berikut dan memasukkan yes pada prompt:
    terraform apply

    Tunggu hingga Terraform menampilkan pesan "Apply complete!".

  3. Buka project Google Cloud Anda untuk melihat hasilnya. Di Konsol Google Cloud, buka resource Anda di UI untuk memastikan bahwa Terraform telah membuat atau mengupdatenya.

Menghapus perubahan

Untuk menghapus perubahan Anda, lakukan langkah-langkah berikut:

  1. Untuk menonaktifkan perlindungan penghapusan, di file konfigurasi Terraform Anda, tetapkan argumen deletion_protection ke false.
    deletion_protection =  "false"
  2. Terapkan konfigurasi Terraform terbaru dengan menjalankan perintah berikut dan memasukkan yes pada perintah:
    terraform apply
  1. Hapus resource yang sebelumnya diterapkan dengan konfigurasi Terraform Anda dengan menjalankan perintah berikut dan memasukkan yes pada prompt:

    terraform destroy

REST v1

Permintaan berikut menggunakan metode databases:insert untuk membuat database baru pada instance yang diterapkan.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • project-id: ID project
  • instance-id: ID instance
  • 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/databases

Meminta isi JSON:

{
  "project": "project-id",
  "instance": "instance-id",
  "name": "database-name"
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

REST v1beta4

Permintaan berikut menggunakan metode databases:insert untuk membuat database baru pada instance yang diterapkan.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • project-id: ID project
  • instance-id: ID instance
  • 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/databases

Meminta isi JSON:

{
  "project": "project-id",
  "instance": "instance-id",
  "name": "database-name"
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

Klien psql

Untuk informasi referensi, lihat CREATE DATABASE dalam dokumentasi PostgreSQL.

Lihat topik berikut dalam dokumentasi PostgreSQL untuk latar belakang dan daftar nilai himpunan karakter yang didukung:

CREATE DATABASE database_name
  [[ ENCODING encoding ][ LC_COLLATE lc_collate ]];

Contoh:
CREATE DATABASE "example_db" WITH OWNER "example_user" ENCODING 'UTF8' LC_COLLATE = 'pl_PL.utf8' LC_CTYPE = 'pl_PL.utf8' TEMPLATE template0;

Cantumkan database Anda

Untuk mencantumkan semua database di instance:

Konsol

  1. Di konsol Google Cloud, buka halaman Instance Cloud SQL.

    Buka Instance Cloud SQL

  2. Untuk membuka halaman Ringkasan instance, klik nama instance.
  3. Klik Database dari menu sebelah kiri. Halaman Database mencantumkan database bersama jenis kolasi, himpunan karakter, dan jenis database-nya.

gcloud

Untuk informasi referensi, lihat gcloud sql databases list.

gcloud sql databases list \
--instance=INSTANCE_NAME

REST v1

Permintaan berikut menggunakan metode databases:list untuk mencantumkan database ke sebuah instance.

Saat mencantumkan database menggunakan API, Anda akan melihat database template tambahan dan database sistem yang tidak ditampilkan oleh konsol. Anda tidak dapat menghapus atau mengelola database sistem.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • project-id: ID project
  • instance-id: ID instance

Metode HTTP dan URL:

GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/databases

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Anda akan menerima respons JSON yang mirip dengan yang berikut ini:

REST v1beta4

Permintaan berikut menggunakan metode databases:list untuk mencantumkan database ke sebuah instance.

Saat mencantumkan database menggunakan API, Anda akan melihat database template tambahan dan database sistem yang tidak ditampilkan oleh konsol. Anda tidak dapat menghapus atau mengelola database sistem.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • project-id: ID project
  • instance-id: ID instance

Metode HTTP dan URL:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/databases

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Anda akan menerima respons JSON yang mirip dengan yang berikut ini:

Klien psql

Untuk informasi referensi, lihat daftar.

Saat mencantumkan database menggunakan psql klien, Anda akan melihat database template tambahan dan database sistem yang tidak ditampilkan oleh konsol. Anda tidak dapat menghapus atau mengelola database sistem.

\l

Menghapus database

Untuk menghapus database di instance Cloud SQL:

Konsol

  1. Di konsol Google Cloud, buka halaman Instance Cloud SQL.

    Buka Instance Cloud SQL

  2. Untuk membuka halaman Ringkasan instance, klik nama instance.
  3. Klik Database dari menu sebelah kiri.
  4. Dalam daftar database, temukan database yang ingin Anda hapus, lalu klik ikon tempat sampah.
  5. Di kotak dialog Delete database, masukkan nama database lalu klik Delete.

gcloud

Untuk informasi referensi, lihat gcloud sql database delete.

gcloud sql databases delete DATABASE_NAME \
--instance=INSTANCE_NAME

REST v1

Permintaan berikut menggunakan metode databases:delete untuk menghapus database yang ditentukan.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • project-id: ID project
  • instance-id: ID instance
  • database-name: Nama database di dalam instance Cloud SQL

Metode HTTP dan URL:

DELETE https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/databases/database-name

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Anda akan menerima respons JSON yang mirip dengan yang berikut ini:

REST v1beta4

Permintaan berikut menggunakan metode databases:delete untuk menghapus database yang ditentukan.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • project-id: ID project
  • instance-id: ID instance
  • database-name: Nama database di dalam instance Cloud SQL

Metode HTTP dan URL:

DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/databases/database-name

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Anda akan menerima respons JSON yang mirip dengan yang berikut ini:

Klien psql

Untuk informasi referensi, lihat DROP DATABASE dalam dokumentasi PostgreSQL.

DROP DATABASE [database_name];

Langkah selanjutnya

Cobalah sendiri

JIka Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi perfoma Cloud SQL dalam skenario di dunia nyata. Pelanggan baru mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.

Coba Cloud SQL gratis