Halaman ini menjelaskan cara mengonfigurasi konektivitas IP publik untuk instance Cloud SQL.
Pengantar
Anda dapat mengonfigurasi instance Cloud SQL agar memiliki alamat IPv4 publik, dan menerima koneksi dari alamat IP tertentu atau rentang alamat dengan menambahkan alamat resmi ke instance Anda.
Anda tidak dapat menentukan jaringan pribadi (misalnya, 10.xxx) sebagai jaringan resmi.
Alamat IP publik untuk instance PostgreSQL:
- IPv6: Instance tidak mendukung IPv6.
- IPv4: Instance memiliki alamat IPv4 statis yang ditetapkan secara otomatis. Terdapat sedikit biaya untuk alamat IP setiap kali instance Anda nonaktif (dinonaktifkan).
Untuk mendapatkan bantuan terkait cara menghubungkan klien administrasi ke instance Anda melalui koneksi IP, lihat Menghubungkan Klien psql menggunakan alamat IP.
Jika Anda mengonfigurasi instance agar dapat menerima koneksi menggunakan alamat IP publiknya, juga mengonfigurasi agar menggunakan SSL untuk menjaga keamanan data Anda. Untuk informasi selengkapnya, lihat Mengonfigurasi SSL untuk Instance.
Untuk mengonfigurasi instance dengan alamat IP yang tidak terekspos ke internet publik, lihat Mengonfigurasi Konektivitas IP Pribadi.
Mengaktifkan IP publik dan menambahkan alamat atau rentang alamat yang diizinkan
Saat Anda mengaktifkan IP publik untuk instance, Cloud SQL akan mengonfigurasi instance dengan alamat IPv4 statis publik. Setelah mengaktifkan IP publik, Anda harus menyiapkan otorisasi untuk koneksi database. Lihat Opsi otorisasi untuk informasi selengkapnya.
Untuk mengaktifkan IP publik dan menambahkan alamat resmi:
-
Di konsol Google Cloud, buka halaman Instance Cloud SQL.
- Untuk membuka halaman Ringkasan instance, klik nama instance.
- Dari menu navigasi SQL, pilih Koneksi.
- Klik tab Networking.
- Pilih kotak centang IP Publik.
- Klik Tambahkan jaringan.
- Atau, pada kolom Nama, masukkan nama untuk jaringan ini.
- Pada kolom Network, masukkan alamat IP atau rentang alamat IP
yang ingin Anda izinkan untuk koneksi.
Gunakan notasi CIDR.
- Klik Done.
- Klik Save.
-
Tambahkan alamat IPv4 ke instance, jika Anda belum melakukannya:
gcloud sql instances patch
INSTANCE_NAME \ --assign-ip - Tampilkan semua alamat resmi yang ada dengan menjelaskan instance:
gcloud sql instances describe
INSTANCE_NAME Cari entri authorizedNetwork di bagian ipConfiguration, dan catat setiap alamat otoritas yang ingin Anda simpan.
-
Perbarui daftar jaringan resmi, termasuk semua alamat yang ingin Anda sertakan.
gcloud sql instances patch
INSTANCE_NAME \ --authorized-networks=IP_ADDR1 ,IP_ADDR2 ...Gunakan notasi CIDR.
- Konfirmasi perubahan Anda:
gcloud sql instances describe
INSTANCE_NAME
- Tampilkan semua alamat resmi yang ada dengan menjelaskan instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type ", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } } - Update instance, termasuk semua alamat yang ingin Anda tetapkan
pada instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- network_range_1 Rentang atau alamat IP yang diotorisasi
- network_range_2 Rentang atau alamat IP resmi lainnya
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id Meminta isi JSON:
{ "settings": { "ipConfiguration": { "authorizedNetworks": [{"value": "
network_range_1 "}, {"value": "network_range_2 "}] } } }Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id "PowerShell (Windows)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id " | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id ", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-21T22:43:37.981Z", "operationType": "UPDATE", "name": "operation-id ", "targetId": "instance-id ", "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /operations/operation-id ", "targetProject": "project-id " }Gunakan notasi CIDR.
- Konfirmasi perubahan Anda:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- ip-address1: Bentuk CIDR alamat IP pertama
- ip-address-name1: Nama alamat IP pertama
- ip-address2: Bentuk CIDR alamat IP kedua
- ip-address-name2: Nama alamat IP kedua
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type 4", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [ { "value": "ip-address1 ", "name": "ip-address-name1 ", "kind": "sql#aclEntry" }, { "value": "ip-address2 ", "name": "ip-address-name2 ", "kind": "sql#aclEntry" } ], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } }
Untuk mengaktifkan IP publik dan menambahkan alamat atau rentang alamat yang diizinkan, gunakan resource Terraform
Menerapkan perubahan
Untuk menerapkan konfigurasi Terraform di project Google Cloud, selesaikan langkah-langkah di bagian berikut.
Menyiapkan Cloud Shell
- Luncurkan Cloud Shell.
-
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).
-
Di Cloud Shell, buat direktori dan file baru di dalam direktori tersebut. Nama file harus memiliki
ekstensi
.tf
—misalnyamain.tf
. Dalam tutorial ini, file ini disebut sebagaimain.tf
.mkdir
DIRECTORY && cdDIRECTORY && touch main.tf -
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.
- Tinjau dan ubah contoh parameter untuk diterapkan pada lingkungan Anda.
- Simpan perubahan Anda.
-
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
-
Tinjau konfigurasi dan pastikan resource yang akan dibuat atau
diupdate oleh Terraform sesuai yang Anda inginkan:
terraform plan
Koreksi konfigurasi jika diperlukan.
-
Terapkan konfigurasi Terraform dengan menjalankan perintah berikut dan memasukkan
yes
pada prompt:terraform apply
Tunggu hingga Terraform menampilkan pesan "Apply complete!".
- 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:
- Untuk menonaktifkan perlindungan penghapusan, di file konfigurasi Terraform Anda, tetapkan
argumen
deletion_protection
kefalse
.deletion_protection = "false"
- Terapkan konfigurasi Terraform dengan menjalankan perintah berikut dan
memasukkan
yes
pada prompt:terraform apply
-
Hapus resource yang sebelumnya diterapkan dengan konfigurasi Terraform Anda dengan menjalankan perintah dan masukkan
yes
pada prompt berikut ini:terraform destroy
- Tampilkan semua alamat resmi yang ada dengan menjelaskan instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type ", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } } - Update instance, termasuk semua alamat yang ingin Anda tetapkan
pada instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- network_range_1 Rentang atau alamat IP yang diotorisasi
- network_range_2 Rentang atau alamat IP resmi lainnya
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id Meminta isi JSON:
{ "settings": { "ipConfiguration": { "authorizedNetworks": [{"value": "
network_range_1 "}, {"value": "network_range_2 "}] } } }Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id "PowerShell (Windows)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id " | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id ", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-21T22:43:37.981Z", "operationType": "UPDATE", "name": "operation-id ", "targetId": "instance-id ", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /operations/operation-id ", "targetProject": "project-id " }Gunakan notasi CIDR.
- Konfirmasi perubahan Anda:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- ip-address1: Bentuk CIDR alamat IP pertama
- ip-address-name1: Nama alamat IP pertama
- ip-address2: Bentuk CIDR alamat IP kedua
- ip-address-name2: Nama alamat IP kedua
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type 4", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [ { "value": "ip-address1 ", "name": "ip-address-name1 ", "kind": "sql#aclEntry" }, { "value": "ip-address2 ", "name": "ip-address-name2 ", "kind": "sql#aclEntry" } ], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } }
Menghapus alamat atau rentang alamat IP resmi
Untuk menghapus alamat resmi:
-
Di konsol Google Cloud, buka halaman Instance Cloud SQL.
- Untuk membuka halaman Ringkasan instance, klik nama instance.
- Pilih Koneksi dari menu navigasi SQL.
- Klik ikon hapus
untuk alamat yang ingin Anda hapus.
- Klik Simpan untuk memperbarui instance.
- Tampilkan semua alamat otoritas yang ada dengan menjelaskan instance:
gcloud sql instances describe
INSTANCE_NAME Cari entri authorizedNetwork di bagian ipConfiguration, dan catat setiap alamat otoritas yang ingin Anda simpan.
-
Perbarui daftar jaringan resmi, dengan meninggalkan semua alamat yang ingin Anda hapus.
gcloud sql instances patch
INSTANCE_NAME \ --authorized-networks=IP_ADDR1 ,IP_ADDR2 ... - Konfirmasi perubahan Anda:
gcloud sql instances describe
INSTANCE_NAME
- Tampilkan semua alamat resmi yang ada dengan menjelaskan instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- ip-address1: Bentuk CIDR alamat IP pertama
- ip-address-name1: Nama alamat IP pertama
- ip-address2: Bentuk CIDR alamat IP kedua
- ip-address-name2: Nama alamat IP kedua
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type 4", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [ { "value": "ip-address1 ", "name": "ip-address-name1 ", "kind": "sql#aclEntry" }, { "value": "ip-address2 ", "name": "ip-address-name2 ", "kind": "sql#aclEntry" } ], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } } - Update instance, dengan menyertakan semua alamat yang ingin Anda simpan dan
meninggalkan alamat apa pun yang ingin dihapus:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- network_range_1 Alamat IP atau rentang jaringan resmi yang akan dihapus
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id Meminta isi JSON:
{ "settings": { "ipConfiguration": { "authorizedNetworks": [{"value": "
network_range_1 "}] } } }Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id "PowerShell (Windows)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id " | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id ", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-21T22:43:37.981Z", "operationType": "UPDATE", "name": "operation-id ", "targetId": "instance-id ", "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /operations/operation-id ", "targetProject": "project-id " } - Konfirmasi perubahan Anda:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- ip-address: Bentuk CIDR alamat IP
- ip-address-name: Nama alamat IP
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type ", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [ { "value": "ip-address ", "name": "ip-address-name ", "kind": "sql#aclEntry" } ], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } }
- Tampilkan semua alamat resmi yang ada dengan menjelaskan instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- ip-address1: Bentuk CIDR alamat IP pertama
- ip-address-name1: Nama alamat IP pertama
- ip-address2: Bentuk CIDR alamat IP kedua
- ip-address-name2: Nama alamat IP kedua
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type 4", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [ { "value": "ip-address1 ", "name": "ip-address-name1 ", "kind": "sql#aclEntry" }, { "value": "ip-address2 ", "name": "ip-address-name2 ", "kind": "sql#aclEntry" } ], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } } - Update instance, dengan menyertakan semua alamat yang ingin Anda simpan dan
meninggalkan alamat apa pun yang ingin dihapus:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- network_range_1 Alamat IP atau rentang jaringan resmi yang akan dihapus
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id Meminta isi JSON:
{ "settings": { "ipConfiguration": { "authorizedNetworks": [{"value": "
network_range_1 "}] } } }Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id "PowerShell (Windows)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id " | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id ", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-21T22:43:37.981Z", "operationType": "UPDATE", "name": "operation-id ", "targetId": "instance-id ", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /operations/operation-id ", "targetProject": "project-id " } - Konfirmasi perubahan Anda:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- ip-address: Bentuk CIDR alamat IP
- ip-address-name: Nama alamat IP
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type ", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [ { "value": "ip-address ", "name": "ip-address-name ", "kind": "sql#aclEntry" } ], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } }
Mengonfigurasi instance untuk menolak semua koneksi IP publik
Mengonfigurasi instance untuk menolak semua koneksi IP publik:
-
Di konsol Google Cloud, buka halaman Instance Cloud SQL.
- Untuk membuka halaman Ringkasan instance, klik nama instance.
- Pilih Koneksi dari menu navigasi SQL.
- Klik ikon hapus
untuk semua alamat resmi.
- Klik Simpan untuk memperbarui instance.
-
Hapus daftar alamat resmi:
gcloud sql instances patch
INSTANCE_NAME \ --clear-authorized-networks - Konfirmasi perubahan Anda:
gcloud sql instances describe
INSTANCE_NAME
- Tampilkan semua alamat resmi yang ada dengan menjelaskan instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- ip-address1: Bentuk CIDR alamat IP pertama
- ip-address-name1: Nama alamat IP pertama
- ip-address2: Bentuk CIDR alamat IP kedua
- ip-address-name2: Nama alamat IP kedua
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type 4", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [ { "value": "ip-address1 ", "name": "ip-address-name1 ", "kind": "sql#aclEntry" }, { "value": "ip-address2 ", "name": "ip-address-name2 ", "kind": "sql#aclEntry" } ], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } } - Perbarui instance dengan daftar alamat kosong:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id Meminta isi JSON:
{ "settings": { "ipConfiguration": { "authorizedNetworks": [] } } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id "PowerShell (Windows)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id " | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id ", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-21T22:43:37.981Z", "operationType": "UPDATE", "name": "operation-id ", "targetId": "instance-id ", "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /operations/operation-id ", "targetProject": "project-id " } - Konfirmasi perubahan Anda:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type ", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } }
- Tampilkan semua alamat resmi yang ada dengan menjelaskan instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- ip-address1: Bentuk CIDR alamat IP pertama
- ip-address-name1: Nama alamat IP pertama
- ip-address2: Bentuk CIDR alamat IP kedua
- ip-address-name2: Nama alamat IP kedua
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type 4", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [ { "value": "ip-address1 ", "name": "ip-address-name1 ", "kind": "sql#aclEntry" }, { "value": "ip-address2 ", "name": "ip-address-name2 ", "kind": "sql#aclEntry" } ], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } } - Perbarui instance dengan daftar alamat kosong:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id Meminta isi JSON:
{ "settings": { "ipConfiguration": { "authorizedNetworks": [] } } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id "PowerShell (Windows)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id " | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id ", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-21T22:43:37.981Z", "operationType": "UPDATE", "name": "operation-id ", "targetId": "instance-id ", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /operations/operation-id ", "targetProject": "project-id " } - Konfirmasi perubahan Anda:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type ", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } }
Menonaktifkan IP publik
Anda dapat menonaktifkan IP publik, hanya jika instance Anda juga dikonfigurasi untuk menggunakan IP Pribadi. Untuk mengaktifkan IP pribadi, lihat Mengonfigurasi instance yang ada untuk menggunakan IP pribadi.
Untuk menonaktifkan IP publik:
-
Di konsol Google Cloud, buka halaman Instance Cloud SQL.
- Untuk membuka halaman Ringkasan instance, klik nama instance.
- Pilih Koneksi dari menu navigasi SQL.
- Hapus centang pada kotak IP Publik.
- Klik Simpan untuk memperbarui instance.
-
Update instance:
gcloud sql instances patch
INSTANCE_NAME \ --no-assign-ip - Konfirmasi perubahan Anda:
gcloud sql instances describe
INSTANCE_NAME
- Tampilkan semua alamat resmi yang ada dengan menjelaskan instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- ip-address1: Bentuk CIDR alamat IP pertama
- ip-address-name1: Nama alamat IP pertama
- ip-address2: Bentuk CIDR alamat IP kedua
- ip-address-name2: Nama alamat IP kedua
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type 4", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [ { "value": "ip-address1 ", "name": "ip-address-name1 ", "kind": "sql#aclEntry" }, { "value": "ip-address2 ", "name": "ip-address-name2 ", "kind": "sql#aclEntry" } ], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } } - Update instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- PROJECT_ID: Project ID
- INSTANCE_ID: ID instance
- VPC_NETWORK_NAME: Tentukan nama jaringan Virtual Private Cloud (VPC) yang ingin Anda gunakan untuk instance ini. Akses layanan pribadi sudah harus dikonfigurasi untuk jaringan tersebut.
- RANGE_NAME: Opsional. Jika ditentukan, tetapkan nama rentang yang dialokasikan untuk
rentang IP. Nama rentang harus sesuai dengan
RFC-1035
dan berisi 1-63 karakter. - AUTHORIZED_NETWORKS: Untuk koneksi IP publik, tentukan koneksi dari jaringan resmi yang dapat terhubung ke instance Anda.
Untuk parameter
ipv4Enabled
, tetapkan nilai ketrue
jika Anda menggunakan alamat IP publik untuk instance ataufalse
jika instance Anda memiliki alamat IP pribadi.Jika Anda menetapkan parameter
enablePrivatePathForGoogleCloudServices
ketrue
, maka Anda mengizinkan layanan Google Cloud lainnya, seperti BigQuery, untuk mengakses data di Cloud SQL dan membuat kueri terhadap data ini melalui koneksi IP pribadi. Dengan menetapkan parameter ini kefalse
, layanan Google Cloud lainnya tidak dapat mengakses data di Cloud SQL melalui koneksi IP pribadi.Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/v1/projects/
PROJECT_ID /instancesMeminta isi JSON:
{ "name": "
INSTANCE_ID ", "region": "region", "databaseVersion": "database-version", "settings": { "tier": "machine-type", "ipConfiguration": { "ipv4Enabled": false, "privateNetwork": "projects/PROJECT_ID /global/networks/VPC_NETWORK_NAME ", "allocatedIpRange": "RANGE_NAME " "authorizedNetworks": [AUTHORIZED_NETWORKS ], "enablePrivatePathForGoogleCloudServices": true } } }Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances"PowerShell (Windows)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/
PROJECT_ID /instances/INSTANCE_ID ", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-21T22:43:37.981Z", "operationType": "CREATE", "name": "OPERATION_ID ", "targetId": "INSTANCE_ID ", "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /operations/OPERATION_ID ", "targetProject": "PROJECT_ID " } - Konfirmasi perubahan Anda:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type ", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [], "ipv4Enabled": false }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } }
- Tampilkan semua alamat resmi yang ada dengan menjelaskan instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- ip-address1: Bentuk CIDR alamat IP pertama
- ip-address-name1: Nama alamat IP pertama
- ip-address2: Bentuk CIDR alamat IP kedua
- ip-address-name2: Nama alamat IP kedua
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type 4", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [ { "value": "ip-address1 ", "name": "ip-address-name1 ", "kind": "sql#aclEntry" }, { "value": "ip-address2 ", "name": "ip-address-name2 ", "kind": "sql#aclEntry" } ], "ipv4Enabled": true }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } } - Update instance:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- PROJECT_ID: Project ID
- INSTANCE_ID: ID instance
- VPC_NETWORK_NAME: Tentukan nama jaringan Virtual Private Cloud (VPC) yang ingin Anda gunakan untuk instance ini. Akses layanan pribadi sudah harus dikonfigurasi untuk jaringan tersebut.
- RANGE_NAME: Opsional. Jika ditentukan, tetapkan nama rentang yang dialokasikan untuk
rentang IP. Nama rentang harus sesuai dengan
RFC-1035
dan berisi 1-63 karakter. - AUTHORIZED_NETWORKS: Untuk koneksi IP publik, tentukan koneksi dari jaringan resmi yang dapat terhubung ke instance Anda.
Untuk parameter
ipv4Enabled
, tetapkan nilai ketrue
jika Anda menggunakan alamat IP publik untuk instance ataufalse
jika instance Anda memiliki alamat IP pribadi.Jika Anda menetapkan parameter
enablePrivatePathForGoogleCloudServices
ketrue
, maka Anda mengizinkan layanan Google Cloud lainnya, seperti BigQuery, untuk mengakses data di Cloud SQL dan membuat kueri terhadap data ini melalui koneksi IP pribadi. Dengan menetapkan parameter ini kefalse
, layanan Google Cloud lainnya tidak dapat mengakses data di Cloud SQL melalui koneksi IP pribadi.Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/v1beta4/projects/
PROJECT_ID /instancesMeminta isi JSON:
{ "name": "
INSTANCE_ID ", "region": "region", "databaseVersion": "database-version", "settings": { "tier": "machine-type", "ipConfiguration": { "ipv4Enabled": false, "privateNetwork": "projects/PROJECT_ID /global/networks/VPC_NETWORK_NAME ", "allocatedIpRange": "RANGE_NAME " "authorizedNetworks": [AUTHORIZED_NETWORKS ], "enablePrivatePathForGoogleCloudServices": true } } }Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID /instances"PowerShell (Windows)
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID /instances" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/
PROJECT_ID /instances/INSTANCE_ID ", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-21T22:43:37.981Z", "operationType": "CREATE", "name": "OPERATION_ID ", "targetId": "INSTANCE_ID ", "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /operations/OPERATION_ID ", "targetProject": "PROJECT_ID " } - Konfirmasi perubahan Anda:
Sebelum menggunakan salah satu data permintaan, buat penggantian berikut:
- project-id: ID project
- instance-id: ID instance
- machine-type Jenis mesin instance
- zone Zona instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/
project-id /instances/instance-id ?fields=settingsUntuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings"PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=settings" | Select-Object -Expand ContentAnda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{ "settings": { "authorizedGaeApplications": [], "tier": "
machine-type ", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "privateNetwork": "projects/project-id /global/networks/default", "authorizedNetworks": [], "ipv4Enabled": false }, "locationPreference": { "zone": "zone ", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "maintenanceWindow": { "kind": "sql#maintenanceWindow", "hour": 0, "day": 0 }, "backupConfiguration": { "startTime": "03:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "54", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" } }
Memecahkan masalah
Masalah | Pemecahan masalah |
---|---|
Aborted connection . |
Masalahnya mungkin:
Aplikasi harus menoleransi kegagalan jaringan dan mengikuti praktik terbaik, seperti penggabungan koneksi dan percobaan ulang. Sebagian besar penyatuan koneksi akan menangkap error ini jika memungkinkan. Jika tidak, aplikasi akan mencoba ulang atau gagal dengan sendirinya. Untuk percobaan ulang koneksi, sebaiknya gunakan metode berikut:
Menggabungkan metode ini membantu mengurangi throttling. |
Certificate verify failed . |
Masa berlaku sertifikat klien telah berakhir atau jalur ke sertifikat tidak benar. Buat ulang sertifikat dengan membuatnya lagi. |
FATAL: database 'user' does not exist . |
gcloud sql connect --user hanya berfungsi dengan pengguna
postgres default.
Terhubung dengan pengguna default, lalu ubah pengguna. |
Anda ingin mengetahui siapa yang terhubung. | Login ke database dan jalankan perintah berikut:
SELECT datname, usename, application_name as appname, client_addr, state, now() - backend_start as conn_age, now() - state_change as last_activity_age FROM pg_stat_activity WHERE backend_type = 'client backend' ORDER BY 6 DESC LIMIT 20 |
Hostname/IP does not match certificate's altnames:
Host: localhost. is not in the cert's altnames . |
Alamat host tidak cocok dengan alamat dalam nama alternatif sertifikat server. Jika Anda menggunakan Node.js dengan verify-full atau yang setara,
gunakan nama DNS untuk parameter servername.
Nama DNS dapat ditemukan di sertifikat
server menggunakan openssl. Misalnya,
|
Langkah berikutnya
- Menyiapkan otorisasi untuk koneksi database. Pelajari lebih lanjut di Opsi otorisasi
- Buat dan kelola kunci SSL untuk instance Anda.
- Hubungkan klien administrasi ke instance Anda.
- Hubungkan ke instance dari aplikasi eksternal.