1. Pengantar
Terakhir Diperbarui: 04-05-2020
Memikirkan koneksi
Ada banyak jenis aplikasi dan framework di luar sana. Dalam codelab ini, kita akan membahas cara terhubung ke Cloud SQL dari mana saja. Kemampuan untuk terhubung diaktifkan dengan memberikan otorisasi secara eksplisit pada IP yang diizinkan untuk terhubung. Opsi ini bisa dibilang merupakan opsi yang paling tidak aman untuk terhubung ke database Cloud SQL, tetapi juga paling mudah disiapkan dan digunakan.
Terkadang hal ini perlu dilakukan dalam produksi, tetapi jika Anda dapat menghindarinya, Anda harus memilih alternatif yang lebih aman (misalnya, menggunakan Proxy Cloud SQL). Penyiapan ini paling ideal untuk pengembangan dan pengujian.
Yang akan Anda bangun
Codelab ini sangat minimalis. Tujuannya adalah untuk memandu Anda memahami seluk-beluk bagian koneksi, tanpa terlalu memikirkan aplikasi itu sendiri. Dalam kondisi ideal, menghubungkan ke Cloud SQL sama seperti menghubungkan ke instance database SQL lainnya, sehingga Anda dapat menggunakan apa yang Anda buat dalam codelab ini, dan menerapkannya ke aplikasi produksi apa pun.
Petunjuk ini akan mencakup panduan untuk melakukan berbagai hal di konsol GCP, serta menyertakan perintah gcloud yang setara untuk digunakan di CLI atau otomatisasi.
Langkah-langkahnya adalah:
- Buat instance Cloud SQL (tutorial ini menggunakan Postgres, tetapi berfungsi serupa untuk MySQL atau SQL Server) dan beri otorisasi IP tertentu yang diizinkan untuk terhubung ke instance tersebut
Yang Anda butuhkan
- Akun GCP tempat Anda memiliki izin untuk mengaktifkan API dan membuat layanan
- Klien Postgres yang diinstal untuk memverifikasi konektivitas (atau klien MySQL jika Anda ingin menggunakan MySQL, bukan Postgres)
2. Membuat instance Cloud SQL
Cloud SQL adalah penawaran database relasional terkelola kami. Layanan ini mendukung MySQL, PostgreSQL, dan SQL Server. Untuk codelab ini, kita akan membuat database Postgres, tetapi petunjuknya serupa untuk ketiga database tersebut.
Di Konsol
Buka halaman Cloud SQL, lalu klik tombol
.
Seperti yang saya sebutkan, sebagian besar codelab ini bersifat umum untuk semua jenis SQL, tetapi untuk codelab ini, pilih PostgreSQL.
- Beri ID instance Anda
- Pilih wilayah yang dekat dengan lokasi Anda
- Masukkan sandi untuk pengguna default (nama pengguna akan menjadi default untuk DB yang dipilih, misalnya
rootuntuk MySQL ataupostgresuntuk PostgreSQL) - Scroll ke bawah, lalu klik
show configuration options - Luaskan bagian
Connectivity - Pastikan
Public IPdicentang danPrivate IPtidak dicentang - Klik tombol

- Dapatkan alamat IP dari tempat Anda terhubung. Cara termudah adalah dengan melakukan penelusuran di Google untuk "Apa IP saya" dan hasil penelusuran akan menampilkan IP publik Anda.
- Masukkan spesifikasi IP ke kolom jaringan, beri nama jika Anda mau, lalu klik Selesai di kotak
New Network. - Scroll ke bawah, lalu klik Buat
Biasanya, instance memerlukan waktu beberapa menit untuk dimulai.
Setelah pembuatan instance selesai, klik instance tersebut dalam daftar, dan di halaman ringkasan, di bagian header Connect to this instance, salin public IP address yang tercantum di sana. Instance tidak akan ada hingga dibuat sepenuhnya, meskipun Anda dapat mengklik detailnya sebelum di-instansiasi sepenuhnya.
Menggunakan gcloud
Pertama, Anda perlu mengambil alamat IP yang ingin Anda beri otorisasi untuk terhubung ke instance Cloud SQL. Cara termudah untuk melakukannya adalah dengan membuka browser, dan menelusuri "What's my IP", lalu hasil penelusuran akan menampilkan alamat IP yang menghadap publik Anda. Namun, jika Anda tidak dapat membuka browser dari tempat Anda melakukan hal ini, Anda dapat menggunakan utilitas seperti dig.
dig @resolver1.opendns.com ANY myip.opendns.com +short -4
Anda harus menentukan region untuk instance Cloud SQL yang paling dekat dengan lokasi Anda. Anda dapat melihat daftar region dengan menjalankan:
gcloud sql tiers list
Setiap paket hanya tersedia di region tertentu. Untuk bagian gcloud dalam tutorial ini, kita hanya membuat instance mikro, sehingga Anda dapat menemukan region untuk tingkat ini yang tersedia dengan menjalankan secara khusus (selama Anda telah menginstal grep):
gcloud sql tiers list | grep db-f1-micro
Perintah untuk membuat instance itu sendiri kemudian akan terlihat seperti (jangan lupa untuk mengganti <AUTHORIZED_IP > dengan IP yang Anda dapatkan dari browser atau dig, dan<REGION > dengan salah satu yang terdekat dengan Anda, serta sandi untuk pengguna root 'postgres'):
gcloud sql instances create sql-codelab-00 --database-version=POSTGRES_11 --tier=db-f1-micro --region=<REGION> --authorized-networks=<AUTHORIZED_IP> --root-password=<PASSWORD>
Proses ini membutuhkan waktu beberapa menit hingga selesai.
Setelah selesai, output di CLI akan mencantumkan PRIMARY_ADDRESS instance. Salin untuk langkah berikutnya.
3. Menguji koneksi dan menyelesaikan
Untuk memverifikasi bahwa instance telah disiapkan dengan benar, dari komputer yang alamat IP-nya Anda masukkan, Anda dapat menjalankan perintah berikut di command line:
psql "host=<IP copied from previous step> port=5432 sslmode=disable user=postgres"
Kemudian, tentukan sandi pengguna default yang Anda siapkan saat membuat instance Cloud SQL.
Selamat! Jika semuanya berjalan lancar, Anda akan melihat perintah Postgres dan dapat menjalankan perintah terhadap database Anda.
Apa selanjutnya?
Lihat beberapa codelab ini...