Halaman ini menjelaskan cara membuat instance Cloud SQL untuk MySQL.
Untuk mengetahui detail informasi tentang semua setelan instance, lihat Setelan instance.
Instance yang baru dibuat memiliki empat database sistem:
information_schema: Menyediakan akses ke metadata database, informasi tentang server MySQL.mysql: Skema sistem. Objek ini berisi tabel yang menyimpan informasi yang diperlukan oleh server MySQL saat dijalankan.performance_schema: Fitur untuk memantau eksekusi MySQL Server di level rendah.sys: Berisi kumpulan objek yang membantu DBA dan developer menafsirkan data yang dikumpulkan oleh skema performa.
Jumlah maksimum instance yang dapat Anda miliki dalam satu project bergantung pada arsitektur jaringan instance tersebut:
- Arsitektur jaringan SQL baru: Anda dapat memiliki hingga 1.000 instance per project.
- Arsitektur jaringan SQL lama: Anda dapat memiliki hingga 100 instance per project.
- Menggunakan kedua arsitektur: Batas Anda akan berada di antara 100 dan 1.000, bergantung pada distribusi instance Anda di kedua arsitektur.
File kasus dukungan untuk meminta penambahan. Replika baca dihitung sebagai instance.
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the gcloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the gcloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init -
Pastikan Anda memiliki peran berikut di akun pengguna Anda:
Pelajari lebih lanjut tentang peran dan perizinan
Buat instance MySQL
Konsol
-
Di konsol Google Cloud , buka halaman Instance Cloud SQL.
- Klik Create instance.
- Pilih New instance.
- Di panel Pilih mesin database Anda pada halaman Buat instance, klik Pilih MySQL.
Di bagian Choose a Cloud SQL edition pada halaman Create a SQL Server instance, pilih edisi Cloud SQL untuk instance Anda:
EnterpriseatauEnterprise Plus.Untuk mengetahui informasi selengkapnya tentang edisi Cloud SQL, lihat Pengantar edisi Cloud SQL.
- Pilih preset edisi untuk instance Anda. Untuk melihat preset yang tersedia, klik menu Preset edisi.
- Di bagian Instance info, pilih versi database untuk instance Anda. Untuk melihat versi yang tersedia, klik menu Database version.
- Jika Anda memilih MySQL 8.0 dan MySQL 8.0.35 atau yang lebih baru untuk versi minor, kotak centang Enable automatic minor version upgrade akan otomatis dipilih untuk instance Anda. Jika Anda tidak ingin mengaktifkan upgrade versi otomatis, hapus centang pada kotak.
- Jika Anda memilih MySQL 8.0 dan MySQL 8.0.34 atau yang lebih lama untuk Versi minor, kotak centang Aktifkan upgrade versi minor otomatis tidak akan tersedia.
Versi database tidak dapat diedit setelah instance dibuat.
- Di kolom Instance ID pada panel Instance info, masukkan
ID untuk instance Anda.
Anda tidak perlu menyertakan project ID dalam nama instance. Hal ini dilakukan secara otomatis jika sesuai (misalnya, di file log).
- Setel sandi untuk pengguna root.
Meskipun ada opsi untuk menyetel Tidak ada sandi, hal ini tidak direkomendasikan untuk alasan keamanan.
-
Opsional: Konfigurasikan kebijakan sandi untuk instance sebagai berikut:
- Centang kotak Aktifkan kebijakan sandi.
- Klik tombol Siapkan kebijakan sandi, tetapkan satu atau beberapa
opsi berikut, lalu klik Save.
- Panjang minimum: Menentukan jumlah karakter minimum yang harus dimiliki oleh sandi.
- Kompleksitas sandi: periksa apakah sandi merupakan kombinasi karakter huruf kecil, huruf besar, numerik, dan non-alfanumerik.
- Batasi penggunaan ulang sandi: Menentukan jumlah sandi sebelumnya
yang tidak dapat Anda gunakan kembali.
Hanya didukung di Cloud SQL untuk MySQL 8.0 dan yang lebih baru.
- Larang nama pengguna: Mencegah penggunaan nama pengguna dalam sandi.
- Di bagian Pilih ketersediaan region dan zona, pilih region dan zona untuk instance Anda. Ketersediaan region mungkin berbeda berdasarkan edisi Cloud SQL untuk MySQL Anda. Untuk informasi selengkapnya, lihat
Tentang setelan instance.
Tempatkan instance Anda di region yang sama dengan resource yang mengaksesnya. Region yang dipilih tidak dapat diubah pada masa mendatang. Pada umumnya, Anda tidak perlu menentukan zona.
Jika mengonfigurasi instance untuk ketersediaan tinggi, Anda dapat memilih zona utama dan sekunder.
Kondisi berikut berlaku jika zona sekunder digunakan selama pembuatan instance:
- Zona secara default ditetapkan ke
Anyuntuk zona utama danAny (different from primary)untuk zona sekunder. - Jika zona utama dan sekunder ditentukan, keduanya harus berada di zona yang berbeda.
- Zona secara default ditetapkan ke
- Di bagian Customize your instance, perbarui setelan untuk instance Anda.
Klik Tampilkan opsi konfigurasi untuk menampilkan grup
setelan. Kemudian, luaskan grup yang ingin Anda tinjau dan sesuaikan setelannya.
Ringkasan semua opsi yang telah dipilih ditampilkan di sebelah kanan.
Penyesuaian setelan instance ini bersifat opsional. Default ditetapkan di setiap
kasus ketika tidak ada penyesuaian yang dilakukan.
Tabel berikut adalah referensi cepat untuk setelan instance. Untuk mengetahui detail selengkapnya tentang setiap setelan, lihat halaman setelan instance.
Setelan Catatan Machine type Machine type Pilih dari Shared core atau Dedicated core. Untuk Shared core, setiap jenis mesin diklasifikasikan berdasarkan jumlah CPU (cores) dan jumlah memori untuk instance Anda. Cores Jumlah vCPU untuk instance Anda. Pelajari lebih lanjut. Memori Jumlah memori untuk instance Anda, dalam GB. Pelajari lebih lanjut. Khusus Untuk jenis mesin Dedicated core, daripada memilih konfigurasi yang telah ditetapkan, pilih tombol Khusus untuk membuat instance dengan konfigurasi kustom. Saat memilih opsi ini, Anda harus memilih jumlah inti dan jumlah memori untuk instance. Pelajari lebih lanjut. Cache data Mengaktifkan cache data Secara default, opsi untuk mengaktifkan cache data dipilih secara otomatis untuk instance edisi Cloud SQL untuk MySQL Enterprise Plus. Jika Anda tidak ingin mengaktifkan cache data, hapus centang pada kotak Enable data cache. Untuk mengetahui informasi selengkapnya tentang cache data, lihat cache data. Penyimpanan Jenis penyimpanan Tentukan apakah instance Anda menggunakan penyimpanan SSD atau HDD. Pelajari lebih lanjut. Kapasitas penyimpanan Jumlah penyimpanan yang disediakan untuk instance. Pelajari lebih lanjut. Aktifkan peningkatan penyimpanan otomatis Menentukan apakah Cloud SQL menyediakan lebih banyak penyimpanan secara otomatis untuk instance Anda saat ruang kosong hampir habis. Pelajari lebih lanjut. Enkripsi Enkripsi yang dikelola Google Opsi default. Kunci enkripsi yang dikelola pelanggan (CMEK) Pilih untuk menggunakan kunci Anda dengan Google Cloud Key Management Service. Pelajari lebih lanjut. Koneksi IP Pribadi Menambahkan alamat IP pribadi untuk instance Anda. Pilih koneksi akses layanan pribadi, koneksi Private Service Connect, atau keduanya untuk instance Anda. Pilihan Anda menyediakan koneksi jaringan pribadi untuk instance Anda. Dalam semua kasus, konfigurasi tambahan diperlukan.
Untuk memilih dan mengonfigurasi akses layanan pribadi, lakukan hal berikut:
- Centang kotak Private Services Access (PSA).
- Dari menu drop-down Jaringan VPC, pilih nama jaringan yang terhubung ke instance Anda.
- Dari menu drop-down Allocated IP range, pilih Automatic atau rentang IP bernama tertentu dari menu drop-down.
Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi akses layanan pribadi, lihat Mengonfigurasi akses layanan pribadi. Instance Anda dapat memiliki alamat IP publik dan alamat IP pribadi.
Untuk memilih dan mengonfigurasi Private Service Connect, lakukan hal berikut:
- Centang kotak Private Service Connect (PSC).
- Klik Add an Endpoint.
- Di bagian Endpoint setup, lakukan tindakan berikut:
- Di kartu New Endpoint, pilih project tempat Anda ingin menyiapkan endpoint dari drop-down Project.
- Pilih jaringan untuk endpoint Anda dari menu drop-down Network.
- Jika Network Connectivity API belum diaktifkan, klik Enable.
- Untuk menyiapkan izin guna membuat kebijakan koneksi layanan secara otomatis, klik Confirm Network Setup.
Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi Private Service Connect, lihat Mengonfigurasi Private Service Connect.
- Pelajari lebih lanjut opsi koneksi IP Pribadi.
- Pelajari lebih lanjut rentang alamat IP yang dialokasikan.
IP Publik Menambahkan alamat IP publik untuk instance Anda. Selanjutnya, Anda dapat menambahkan jaringan yang diizinkan untuk terhubung ke instance. Instance Anda dapat memiliki alamat IP publik dan pribadi.
Pelajari lebih lanjut cara menggunakan IP publik.
Jaringan yang diizinkan Tambahkan nama untuk jaringan baru dan Alamat jaringan. Pelajari lebih lanjut.
Mengizinkan Data API Dengan mencentang kotak ini, Anda mengizinkan pengguna yang berwenang untuk memanggil Data API guna menjalankan pernyataan SQL pada instance. Untuk instance yang hanya memiliki IP Pribadi, hal ini memungkinkan pengguna yang berwenang memanggil Data API dari internet publik.
Mengaktifkan jalur pribadi Dengan mencentang kotak ini, Anda mengizinkan layanan Google Cloud lain, seperti BigQuery, mengakses data di Cloud SQL dan membuat kueri terhadap data ini melalui koneksi pribadi.
Mengaktifkan Penggabungan Koneksi Terkelola Dengan mencentang kotak ini, Anda mengaktifkan Penggabungan Koneksi Terkelola untuk instance Anda. Penggabungan Koneksi Terkelola memungkinkan Anda menskalakan workload dengan mengoptimalkan pemanfaatan resource dan latensi koneksi instance Cloud SQL menggunakan penggabungan dan multiplexing. Untuk mengetahui informasi selengkapnya tentang Penggabungan Koneksi Terkelola, lihat Ringkasan Penggabungan Koneksi Terkelola.
Keamanan Mode certificate authority server Pilih jenis certificate authority (CA) yang menandatangani sertifikat server untuk instance Cloud SQL ini. Pelajari lebih lanjut.
Secara default, saat Anda membuat instance di konsol Google Cloud , instance tersebut akan menggunakan certificate authority internal yang dikelola Google (
GOOGLE_MANAGED_INTERNAL_CA), yang merupakan opsi CA per instance.Rotasi sertifikat server otomatis Jika Anda memilih opsi certificate authority (CA) CAS yang dikelola Google (
Opsi ini dinonaktifkan secara default.GOOGLE_MANAGED_CAS_CA) atau certificate authority internal CAS yang dikelola pelanggan (CUSTOMER_MANAGED_CAS_CA) sebagai mode CA server untuk instance, Anda dapat memilih apakah akan merotasi sertifikat server untuk instance secara otomatis. Untuk mengetahui informasi selengkapnya tentang cara merotasi sertifikat server Cloud SQL secara otomatis, lihat Mengaktifkan rotasi sertifikat server otomatis.Perlindungan data Tingkat cadangan Opsi pencadangan instance Anda. Anda dapat memilih antara pencadangan yang ditingkatkan dan pencadangan standar. Otomatiskan backup Periode waktu saat Anda ingin pencadangan dimulai. Pelajari lebih lanjut. Pilih tempat untuk menyimpan cadangan Anda Pilih Multi-region untuk sebagian besar kasus penggunaan. Jika Anda perlu menyimpan cadangan di region tertentu, misalnya, jika ada alasan peraturan untuk melakukannya, pilih Region kemudian pilih region Anda dari menu drop-down Lokasi. Pilih jumlah cadangan yang akan disimpan Jumlah cadangan otomatis yang ingin Anda pertahankan (dari 1 hingga 365 hari). Pelajari lebih lanjut. Aktifkan pemulihan point-in-time Mengaktifkan pemulihan point-in-time dan write-ahead logging. Pelajari lebih lanjut. Mengaktifkan proteksi dari penghapusan Menentukan apakah akan melindungi instance dari penghapusan yang tidak disengaja. Pelajari lebih lanjut. Mengaktifkan pencadangan yang dipertahankan setelah penghapusan instance Menentukan apakah pencadangan otomatis dan on-demand dipertahankan setelah instance dihapus. Pelajari lebih lanjut. Pilih jumlah hari untuk log yang akan disimpan Mengonfigurasi retensi write-ahead log dari 1 hingga 7 hari. Setelan defaultnya yakni 7 hari. Pelajari lebih lanjut. Pemeliharaan Periode pilihan Menentukan periode satu jam ketika Cloud SQL dapat melakukan pemeliharaan yang mengganggu pada instance Anda. Jika Anda tidak menyetel periode ini, pemeliharaan yang mengganggu dapat dilakukan kapan saja. Pelajari lebih lanjut. Urutan update Waktu yang Anda pilih untuk update instance, relatif terhadap instance lain dalam project yang sama. Pelajari lebih lanjut. Tanda Tambahkan tanda Anda dapat menggunakan flag database untuk mengontrol setelan dan parameter untuk instance Anda. Pelajari lebih lanjut. Query Insights Aktifkan Query Insight Dengan mencentang kotak ini, Anda mengaktifkan Query Insight untuk instance Anda. Query Insights memberi Anda informasi mendetail tentang kueri database, termasuk performa kueri, teks kueri, dan rencana eksekusi kueri. Setelah memilih Query Insights, Anda dapat mengaktifkan fitur tambahan yang terkait dengan Query Insights. Untuk mengetahui informasi selengkapnya tentang fitur ini dan Query Insights, lihat Menggunakan Query Insights untuk meningkatkan performa kueri.
Performance capture Saat mencentang kotak Enable Query insights, Anda juga mengaktifkan pengambilan performa MySQL secara otomatis.
Jika Anda tidak ingin mengaktifkan pengambilan performa MySQL, hapus centang pada kotak Performance capture. Anda dapat mengaktifkan atau menonaktifkan pengambilan performa MySQL untuk instance yang ada di lain waktu dengan memperbarui setelan instance. Untuk mengetahui informasi selengkapnya tentang pengambilan performa MySQL, lihat Ringkasan pengambilan performa Cloud SQL.
Label TAMBAHKAN LABEL Tambahkan kunci dan nilai untuk setiap label yang ditambahkan. Anda menggunakan label untuk membantu mengatur instance. - Klik Create Instance.
Catatan: Mungkin diperlukan waktu beberapa menit untuk membuat instance. Namun, Anda dapat melihat informasi tentang instance saat sedang dibuat.
Untuk melihat sandi dalam teks yang jelas, klik ikon Tampilkan sandi.
Anda dapat memasukkan sandi secara manual atau mengklik Buat agar Cloud SQL membuat sandi untuk Anda secara otomatis.
gcloud
Untuk mengetahui informasi tentang cara menginstal dan memulai gcloud CLI, lihat Menginstal gcloud CLI. Untuk mengetahui informasi tentang cara memulai Cloud Shell, lihat dokumentasi Cloud Shell.
- Gunakan perintah
gcloud sql instances createuntuk membuat instance: - vCPU harus berupa 1 atau bilangan genap antara 2 dan 96.
- Memori harus:
- 0,9 hingga 6,5 GB per vCPU
- Kelipatan 256 MB
- Setidaknya 3,75 GB (3840 MB)
- Zona harus berupa zona yang valid.
- Jika zona sekunder ditentukan, zona utama juga harus ditentukan.
- Jika zona utama dan sekunder ditentukan, zona tersebut harus berbeda.
- Jika zona utama dan sekunder ditentukan, zona tersebut harus berada di region yang sama.
- Anda menggunakan parameter
--no-assign-ip. - Gunakan parameter
--networkuntuk menentukan nama jaringan VPC yang ingin Anda gunakan untuk membuat koneksi pribadi. GOOGLE_MANAGED_INTERNAL_CA: ini adalah nilai default. Dengan opsi ini, CA internal yang dikhususkan untuk setiap instance Cloud SQL menandatangani sertifikat server untuk instance tersebut.GOOGLE_MANAGED_CAS_CA: dengan opsi ini, hierarki CA yang terdiri dari CA root dan CA server bawahan yang dikelola oleh Cloud SQL dan dihosting di Google Cloud Certificate Authority Service (CA Service) akan digunakan. CA server bawahan di suatu region menandatangani sertifikat server dan dibagikan di seluruh instance di region tersebut. Opsi ini hanya didukung di MySQL 8.0.30 dan yang lebih baru.CUSTOMER_MANAGED_CAS_CA: dengan opsi ini, Anda menentukan hierarki CA dan mengelola rotasi sertifikat CA. Anda membuat kumpulan CA di CA Service di region yang sama dengan instance Anda. Salah satu CA dalam pool digunakan untuk menandatangani sertifikat server. Opsi ini hanya didukung di MySQL 8.0.30 dan yang lebih baru. Untuk mengetahui informasi selengkapnya, lihat Menggunakan CA yang dikelola pelanggan.NO_AUTOMATIC_ROTATION: ini adalah nilai default. Dengan opsi ini, tidak akan ada rotasi sertifikat server otomatis. Sertifikat server harus dirotasi secara manual.AUTOMATIC_ROTATION_DURING_MAINTENANCE: Dengan opsi ini, rotasi sertifikat server otomatis diaktifkan selama pemeliharaan terjadwal Cloud SQL atau update pemeliharaan mandiri. Memerlukanserver_ca_modeuntuk menjadiGOOGLE_MANAGED_CAS_CAatauCUSTOMER_MANAGED_CAS_CA.- Zona harus berupa zona yang valid.
- Jika zona sekunder ditentukan, zona utama juga harus ditentukan.
- Catat alamat IP yang ditetapkan secara otomatis.
Jika tidak menggunakan Cloud SQL Auth Proxy, Anda akan menggunakan alamat ini sebagai alamat host yang digunakan aplikasi atau alat Anda untuk terhubung ke instance.
- Atur kata sandi untuk pengguna MySQL "root@%":
gcloud sql users set-password root \ --host=% \ --instance INSTANCE_NAME \ --password PASSWORD
Untuk instance edisi Cloud SQL Enterprise Plus:
gcloud sql instances create INSTANCE_NAME \ --region=REGION \ --tier=TIER \ --database-version=DATABASE_VERSION \ --edition=ENTERPRISE_PLUS
Untuk instance edisi Cloud SQL Enterprise:
gcloud sql instances create INSTANCE_NAME \ --cpu=NUMBER_CPUS \ --memory=MEMORY_SIZE \ --region=REGION
--tier jika memilih
db-f1-micro atau db-g1-small sebagai jenis mesin:
gcloud sql instances create INSTANCE_NAME \ --tier=API_TIER_STRING \ --region=REGION
vCPU dan ukuran memori memiliki batasan nilai:
Misalnya, perintah berikut akan membuat instance edisi Cloud SQL Enterprise dengan dua vCPU dan memori 7.680 MB:
gcloud sql instances create myinstance \ --database-version=MYSQL_8_0 \ --cpu=2 \ --memory=7680MB \ --region=us-central1
Perintah berikut membuat instance edisi Cloud SQL Enterprise Plus dengan empat core:
gcloud sql instances create myinstance \ --database-version=MYSQL_8_0_31 \ --tier=db-perf-optimized-N-4 \ --edition=ENTERPRISE_PLUS \ --region=us-central1
Nilai default untuk REGION adalah us-central1.
Jangan menyertakan informasi sensitif atau informasi identitas pribadi
dalam nama instance Anda; informasi ini terlihat secara eksternal.
Anda tidak perlu menyertakan project ID dalam nama instance. Hal ini dilakukan secara otomatis jika
sesuai (misalnya, di file log).
Jika membuat instance untuk
ketersediaan tinggi, Anda
dapat menentukan zona utama dan sekunder menggunakan parameter --zone
dan --secondary-zone. Kondisi berikut
berlaku jika zona sekunder digunakan selama pembuatan atau pengeditan instance:
Anda dapat menambahkan parameter lainnya untuk menentukan setelan instance lainnya:
| Setelan | Parameter | Catatan |
|---|---|---|
| Parameter yang diperlukan | ||
| Versi database | --database-version |
Versi database, yang didasarkan pada edisi Cloud SQL Anda. |
| Wilayah | --region |
Lihat nilai yang valid. |
| Menetapkan kebijakan sandi | ||
| Aktifkan kebijakan sandi | --enable-password-policy |
Mengaktifkan kebijakan sandi saat digunakan. Secara default, kebijakan sandi dinonaktifkan. Jika dinonaktifkan menggunakan parameter --clear-password-policy, parameter kebijakan sandi lainnya akan direset.
|
| Panjang minimum | --password-policy-min-length |
Menentukan jumlah karakter minimum yang harus dimiliki sandi. |
| Kerumitan sandi | --password-policy-complexity |
Mengaktifkan pemeriksaan kerumitan sandi untuk memastikan bahwa sandi
berisi salah satu dari setiap jenis karakter berikut: huruf kecil, huruf besar,
numerik, dan non-alfanumerik. Tetapkan nilai ke
COMPLEXITY_DEFAULT. |
| Batasi penggunaan kembali sandi | --password-policy-reuse-interval |
Menentukan jumlah sandi sebelumnya yang tidak dapat digunakan kembali. Hanya didukung di Cloud SQL untuk MySQL 8.0 dan yang lebih baru. |
| Larang nama pengguna | --password-policy-disallow-username-substring |
Mencegah penggunaan nama pengguna dalam sandi. Gunakan
parameter --no-password-policy-disallow-username-substring
untuk menonaktifkan pemeriksaan tersebut. |
| Konektivitas | ||
| Penggabungan Koneksi Terkelola | --enable-connection-pooling |
Mengaktifkan Penggabungan Koneksi Terkelola
di instance baru. Anda dapat mengonfigurasi setelan Penggabungan Koneksi Terkelola lanjutan setelah instance dibuat.
Catatan: Fitur ini hanya tersedia untuk instance edisi Cloud SQL Enterprise Plus yang dikonfigurasi untuk memenuhi persyaratan Penggabungan Koneksi Terkelola. |
| IP Pribadi |
Akses layanan pribadi
Private Service Connect
|
--network: menentukan nama jaringan VPC yang ingin Anda gunakan
untuk instance ini. Akses layanan pribadi harus sudah
dikonfigurasi untuk jaringan tersebut.ork. Pada project baru atau kosong, Anda harus mengaktifkan
servicenetworking.googleapis.com, mengalokasikan rentang IP, dan
mengonfigurasi Peering Jaringan VPC sebelum membuat instance. Hanya tersedia untuk perintah beta
(gcloud beta sql instances create).
Parameter ini hanya valid jika: Untuk instance Cloud SQL yang menggunakan Private Service Connect untuk koneksi IP pribadi, gunakan flag berikut:
Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi Private Service Connect, lihat Mengonfigurasi Private Service Connect. |
| Akses Data API | --data-api-access |
Mengontrol konektivitas ke instance menggunakan Data API. Fitur ini
tidak diizinkan secara default. Tetapkan nilai ke ALLOW_DATA_API agar
pengguna dapat menggunakan Data API untuk terhubung ke instance. Untuk instance yang hanya dikonfigurasi dengan alamat IP pribadi, pengguna yang diberi otorisasi dapat memanggil Data API pada instance dari internet publik. Tetapkan nilai ke
DISALLOW_DATA_API untuk melarang penggunaan Data API.
|
| IP Publik | --authorized-networks |
Untuk koneksi IP publik, hanya koneksi dari jaringan yang diizinkan yang dapat terhubung ke instance Anda. Pelajari lebih lanjut. |
| Penerapan SSL |
|
Parameter Parameter |
| Mode CA server | --server-ca-mode |
Flag |
| Rotasi sertifikat server otomatis | --server-certificate-rotation-mode |
Flag |
| Arsitektur jaringan | --enforce-new-sql-network-architecture |
Menerapkan penggunaan arsitektur jaringan baru untuk instance setelah pembuatan. Menggunakan flag ini saat Anda membuat instance sebelum project tersebut diupgrade sepenuhnya ke arsitektur jaringan baru dapat menyebabkan konsumsi alamat IP yang berlebihan atau kegagalan dalam membuat instance jika tidak ada alamat IP yang tersisa dalam rentang IP yang dialokasikan. Untuk mengetahui informasi selengkapnya, lihat Mengupgrade instance ke arsitektur jaringan baru dan Mengalokasikan rentang alamat IP. |
| Jenis mesin dan penyimpanan | ||
| Jenis mesin | --tier |
Digunakan untuk menentukan instance inti bersama
(db-f1-micro
atau db-g1-small).
Untuk konfigurasi instance kustom, gunakan parameter --cpu atau
--memory sebagai gantinya. Lihat
Memilih seri
mesin untuk mengetahui kemungkinan konfigurasi.
|
| Jenis penyimpanan | --storage-type |
Tentukan apakah instance Anda menggunakan penyimpanan SSD atau HDD. Pelajari lebih lanjut. |
| Kapasitas penyimpanan | --storage-size |
Jumlah penyimpanan yang disediakan untuk instance, dalam GB. Pelajari lebih lanjut. |
| Peningkatan Penyimpanan Otomatis | --storage-auto-increase |
Menentukan apakah Cloud SQL menyediakan lebih banyak penyimpanan secara otomatis untuk instance Anda saat ruang kosong hampir habis. Pelajari lebih lanjut. |
| Batas peningkatan penyimpanan otomatis | --storage-auto-increase-limit |
Menentukan seberapa besar Cloud SQL dapat meningkatkan penyimpanan secara otomatis,
dalam GB. Nilai defaultnya adalah unlimited, yang memungkinkan penyimpanan
bertambah hingga penyimpanan maksimum yang tersedia untuk tingkat instance.
Pelajari lebih lanjut.
|
| Cache data (opsional) | --enable-data-cache |
Mengaktifkan atau menonaktifkan cache data untuk instance. Untuk informasi selengkapnya, lihat cache data. |
| Pencadangan otomatis dan ketersediaan tinggi | ||
| Ketersediaan tinggi | --availability-type |
Untuk instance dengan ketersediaan tinggi, tetapkan ke REGIONAL.
Pelajari lebih lanjut.
|
| Zona sekunder | --secondary-zone |
ika membuat instance untuk
ketersediaan tinggi,
Anda dapat menentukan zona utama dan sekunder menggunakan
--zone dan --secondary-zone parameters. Pembatasan
berikut berlaku jika zona sekunder digunakan selama
pembuatan atau pengeditan instance:
Jika zona utama dan sekunder ditentukan, zona tersebut harus berbeda. Jika zona utama dan sekunder ditentukan, zona tersebut harus berada di region yang sama. |
| Backup otomatis | --backup-start-time |
Periode waktu saat Anda ingin pencadangan dimulai. Pelajari lebih lanjut. |
| Setelan retensi untuk cadangan otomatis | --retained-backups-count |
Jumlah cadangan otomatis yang perlu dipertahankan. Pelajari lebih lanjut. |
| Logging biner | --enable-bin-log |
Logging biner memungkinkan replikasi dan pemulihan point-in-time. Pelajari lebih lanjut. |
| Setelan retensi untuk logging biner | --retained-transaction-log-days |
Jumlah hari untuk menyimpan log biner untuk pemulihan point-in-time. Pelajari lebih lanjut. |
| Pemulihan point-in-time | --enable-point-in-time-recovery |
Mengaktifkan pemulihan point-in-time dan write-ahead logging. Pelajari lebih lanjut. |
| Menambahkan flag database | ||
| Flag database | --database-flags |
Anda dapat menggunakan flag database untuk mengontrol setelan dan parameter untuk instance Anda. Pelajari tanda database lebih lanjut. Pelajari lebih lanjut cara memformat parameter ini. |
| Jadwal pemeliharaan | ||
| Masa pemeliharaan | --maintenance-window-day,
--maintenance-window-hour |
Menentukan periode satu jam kapan Cloud SQL dapat melakukan pemeliharaan yang mengganggu pada instance Anda. Jika Anda tidak menyetel periode, maka pemeliharaan yang dapat mengganggu bisa dilakukan kapan saja. Pelajari lebih lanjut. |
| Waktu pemeliharaan | --maintenance-release-channel |
Waktu yang Anda pilih untuk update instance, relatif terhadap
instance lain dalam project yang sama. Gunakan preview untuk update
sebelumnya, dan production untuk update berikutnya.
Pelajari lebih lanjut.
|
| Upgrade versi minor otomatis | ||
| Mengaktifkan upgrade versi minor otomatis | --enable-auto-upgrade-minor-version |
Untuk instance MySQL 8.0 yang Anda tentukan versi minornya
8.0.35 atau yang lebih baru, misalnya --database-version=MYSQL_8_0_35--database-version=MYSQL_8_0 |
| Query Insights | ||
--insights-config-query-insights-enabled |
Mengaktifkan Query Insights untuk memberikan analisis kueri dan rencana kueri. | |
--insights-config-enhanced-query-insights-enabled |
Mengaktifkan Query Insights yang ditingkatkan untuk edisi Cloud SQL Enterprise Plus guna memberikan analisis kueri yang lebih mendetail. | |
--performance-capture-config |
Gunakan flag ini untuk mengonfigurasi setelan pengambilan performa MySQL untuk instance MySQL Anda.
Saat mengaktifkan Query Insights atau insight kueri yang ditingkatkan, Anda juga mengaktifkan pengambilan performa MySQL dengan kondisi pemicu default. Anda dapat mengonfigurasi atau menonaktifkan pengambilan performa dengan flag --performance-capture-config dalam perintah create yang sama atau dengan mengupdate instance nanti.
Untuk mengetahui informasi selengkapnya, lihat
Mengonfigurasi pengambilan performa MySQL.
|
|
| SAN Kustom | ||
| Menambahkan nama alternatif subjek (SAN) kustom | --custom-subject-alternative-names=DNS_NAMES |
Jika Anda ingin menggunakan nama DNS kustom untuk terhubung ke instance Cloud SQL, bukan menggunakan alamat IP, konfigurasikan setelan nama alternatif subjek (SAN) kustom saat membuat instance. Nama DNS kustom yang Anda masukkan ke dalam setelan SAN kustom akan ditambahkan ke kolom SAN pada sertifikat server instance. Dengan begitu, Anda dapat menggunakan nama DNS kustom dengan validasi nama host secara aman. Agar dapat menggunakan nama DNS kustom di klien dan aplikasi, Anda harus menyiapkan pemetaan antara nama DNS dan alamat IP. Proses ini disebut resolusi DNS. Anda dapat menambahkan daftar yang dipisahkan koma yang berisi maksimal tiga nama DNS kustom ke setelan SAN kustom. |
Terraform
Untuk membuat instance, 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 && cd DIRECTORY && touch main.tf
-
Jika mengikuti tutorial, Anda dapat menyalin kode contoh di setiap bagian atau langkah.
Salin kode contoh ke dalam
main.tfyang 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
yespada 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 proteksi dari penghapusan, di file konfigurasi Terraform Anda, tetapkan
argumen
deletion_protectionkefalse.deletion_protection = "false"
- Terapkan konfigurasi Terraform dengan menjalankan perintah berikut dan
memasukkan
yespada prompt:terraform apply
-
Hapus resource yang sebelumnya diterapkan dengan konfigurasi Terraform Anda dengan menjalankan perintah berikut dan memasukkan
yespada prompt:terraform destroy
REST v1
Buat instance
Contoh ini akan membuat sebuah instance. Beberapa parameter opsional, seperti cadangan dan logging biner juga disertakan. Untuk mengetahui daftar lengkap parameter panggilan ini, lihat halaman Instances:insert. Untuk mengetahui informasi tentang setelan instance, termasuk nilai yang valid untuk region, lihat Setelan instance.
Jangan menyertakan informasi sensitif atau informasi identitas pribadi
di ID instance Anda; karena informasi tersebut terlihat dari luar.
Anda tidak perlu menyertakan project ID dalam nama instance. Hal ini dilakukan secara otomatis jika
sesuai (misalnya, di file log).
Sebelum menggunakan data permintaan lain, buat pengganti berikut:
- PROJECT_ID: project ID Anda.
- INSTANCE_ID: ID instance Anda
- DATABASE_VERSION: versi database.
Misalnya:
MYSQL_9_7,MYSQL_8_4, atauMYSQL_8_0_37. Jika Anda tidak menentukan versi database, versi database default-nya adalahMYSQL_8_4. - REGION: Region
- MACHINE_TYPE: jenis mesin Anda
- EDITION_TYPE: edisi Cloud SQL Anda
- DATA_CACHE_ENABLED: (opsional) tetapkan ke
trueuntuk mengaktifkan cache data untuk instance Anda - PRIVATE_NETWORK: tentukan nama jaringan Virtual Private Cloud (VPC) yang ingin digunakan untuk instance ini. Akses layanan pribadi harus sudah dikonfigurasi untuk jaringan tersebut.
- AUTHORIZED_NETWORKS: untuk koneksi IP publik, tentukan koneksi dari jaringan yang diizinkan yang dapat terhubung ke instance Anda.
- CA_MODE: tentukan
hierarki certificate authority
untuk instance, baik
GOOGLE_MANAGED_INTERNAL_CAmaupunGOOGLE_MANAGED_CAS_CA. Jika Anda tidak menentukanserverCaMode, konfigurasi defaultnya adalahGOOGLE_MANAGED_INTERNAL_CA. Fitur ini berada dalam Pratinjau. - SERVER_CERTIFICATE_ROTATION_MODE: Untuk rotasi sertifikat server otomatis untuk
- SERVER_CERTIFICATE_ROTATION_MODE: untuk rotasi sertifikat server otomatis untuk
instance Anda, tentukan
AUTOMATIC_ROTATION_DURING_MAINTENANCE. Jika Anda tidak menentukanserverCertificateRotationMode, konfigurasi defaultnya adalahNO_AUTOMATIC_ROTATION. - DNS_NAMES: tambahkan daftar yang dipisahkan koma yang berisi maksimal tiga nama DNS ke sertifikat server instance Cloud SQL Anda. Anda dapat mengamankan beberapa nama DNS dengan satu sertifikat. Fitur ini tersedia dalam Pratinjau dan hanya untuk instance
CUSTOMER_MANAGED_CAS_CA.
Untuk menetapkan kebijakan sandi saat membuat instance, sertakan objek passwordValidationPolicy dalam permintaan. Tetapkan parameter berikut, jika diperlukan:
enablePasswordPolicy: mengaktifkan kebijakan sandi saat disetel ketrue.Untuk menghapus kebijakan sandi, Anda dapat menggunakan permintaan
PATCHdengannullsebagai nilai untukenablePasswordPolicy. Dalam kasus ini, parameter kebijakan sandi lainnya akan diatur ulang.minLength: menentukan jumlah karakter minimum yang harus dimiliki sandi.complexity: memeriksa apakah sandi merupakan kombinasi karakter huruf kecil, huruf besar, angka, dan non-alfanumerik. Nilai defaultnya adalahCOMPLEXITY_DEFAULT.reuseInterval: menentukan jumlah sandi sebelumnya yang tidak dapat Anda gunakan kembali.Hanya didukung di Cloud SQL untuk MySQL 8.0 dan yang lebih baru.
disallowUsernameSubstring: mencegah penggunaan nama pengguna dalam sandi saat ditetapkan ketrue.
Anda dapat menggunakan kolom sqlNetworkArchitecture untuk menerapkan penggunaan arsitektur jaringan baru untuk instance setelah pembuatan, meskipun project belum sepenuhnya diupgrade.
Untuk mengetahui detail selengkapnya tentang arsitektur jaringan baru dan implikasinya, lihat
Mengupgrade instance ke arsitektur jaringan baru dan Mengalokasikan rentang alamat IP.
Untuk mengonfigurasi instance untuk query insights, lakukan penggantian yang sesuai di
bagian insightsConfig:
- QUERY_INSIGHTS_ENABLED: ditetapkan ke
trueuntuk mengaktifkan Query Insights untuk instance Anda. - RECORD_CLIENT_ADDRESS: tetapkan ke
trueuntuk menyimpan alamat IP klien tempat kueri berasal dan membantu Anda mengelompokkan data tersebut untuk menjalankan metrik pada kueri tersebut. Kueri berasal dari lebih dari satu host. Meninjau grafik kueri dari alamat IP klien dapat membantu mengidentifikasi sumber masalah. - RECORD_APPLICATION_TAGS: ditetapkan ke
trueuntuk menyimpan tag aplikasi yang membantu Anda menentukan API dan rute pengontrol tampilan model (MVC) yang membuat permintaan dan mengelompokkan data untuk menjalankan metrik pada tag tersebut. Opsi ini mengharuskan Anda mengomentari kueri dengan sekumpulan tag tertentu. Anda dapat melakukannya dengan menggunakan library instrumentasi otomatis pemetaan relasional objek (ORM) open source sqlcommenter. Informasi ini membantu Query Insights mengidentifikasi sumber masalah dan MVC tempat masalah tersebut berasal. Jalur aplikasi membantu Anda dalam pemantauan aplikasi. - QUERY_STRING_LENGTH: ditetapkan ke batas panjang kueri dalam byte,
Menetapkan batas panjang kueri default. Panjang kueri yang lebih tinggi lebih berguna untuk kueri analitis, tetapi juga memerlukan lebih banyak memori. Jika panjang kueri diubah, Anda harus memulai ulang instance.
Anda masih dapat menambahkan tag ke kueri yang melebihi batas panjang.
Untuk edisi Cloud SQL Enterprise, Anda dapat menentukan nilai dalam byte dari
256hingga4500. Panjang kueri default adalah1024byte. Untuk edisi Cloud SQL Enterprise Plus, Anda dapat menentukan batas dalam byte dari1hingga1048576. Nilai defaultnya adalah1024byte (1 KB). - QUERY_PLANS_PER_MINUTE: ditetapkan ke jumlah rencana kueri yang akan diambil per menit.
Secara default, maksimum 5 sampel rencana kueri yang dijalankan diambil per menit di semua database pada instance. Meningkatkan frekuensi sampling kemungkinan akan memberi Anda lebih banyak titik data, tetapi dapat menambah overhead performa. Untuk menonaktifkan pengambilan sampel, tetapkan nilai ini ke
0. Untuk edisi Cloud SQL Enterprise, Anda dapat mengubah nilainya dari 0 menjadi 20. Untuk edisi Cloud SQL Enterprise Plus, Anda dapat meningkatkan jumlah maksimum hingga 200 untuk memberikan lebih banyak titik data. - ENABLE_ENHANCED_QUERY_INSIGHTS_ENABLED: tetapkan ke
trueuntuk mengaktifkan Query Insights yang ditingkatkan untuk instance Anda.
Untuk kolom performanceCaptureConfig, sertakan setelan flag berikut.
Jika Anda tidak menetapkan nilai untuk flag, agen pemantauan akan menggunakan nilai default untuk nilai minimum. Untuk informasi lebih mendetail tentang pemicu yang ditetapkan oleh flag ini, lihat
Pemicu pengambilan performa.
- PERFORMANCE_CAPTURE_ENABLED: ditetapkan ke
falseuntuk menonaktifkan pengambilan performa MySQL untuk instance Anda. JikaqueryInsightsEnabledditetapkan ketrue, pengambilan performa akan diaktifkan secara otomatis dan menerapkan nilai default ke kondisi pemicu berbasis nilai minimum. - PROBING_INTERVAL_SECONDS: bilangan bulat antara
30dan86400. Interval waktu, dalam detik, di antara pemeriksaan metrik. Default-nya adalah30. - PROBE_THRESHOLD: berapa kali batas harus dilampaui secara berturut-turut untuk
memicu pengambilan performa. Rentang yang valid adalah
1hingga20. Default-nya adalah3. - RUNNING_THREADS_THRESHOLD: untuk instance utama, jumlah minimum thread aktif yang dianggap melebihi batas. Contoh,
10. Harus lebih besar dari atau sama dengan10. Jika tidak ditetapkan, nilai defaultnya didasarkan pada ukuran instance. Default-nya adalahMIN(600, cpuCount * 20). Default ini adalah600atau jumlah vCPU pada instance dikalikan dengan20, mana saja yang lebih kecil. - SECONDS_BEHIND_SOURCE_THRESHOLD: untuk replika baca, jeda replikasi minimum, dalam
detik, yang dianggap melebihi batas. Harus lebih besar dari
1. Jumlah defaultnya adalah900 - TRANSACTION_DURATION_THRESHOLD: durasi, dalam detik, transaksi yang belum di-commit
sebelum transaksi dilacak dan disertakan dalam log pengambilan performa.
Contoh,
300. Nilai minimum adalah60. Default-nya adalah3600. - SECONDS: durasi, dalam detik, dari
transaksi yang berjalan lama yang akan diakhiri secara otomatis. Batas ini tidak dapat ditetapkan ke nilai yang lebih kecil dari nilai yang Anda tetapkan untuk parameter
transactionDurationThreshold(TRANSACTION_DURATION_THRESHOLD). - TRANSACTION_TYPE: menentukan kategori transaksi yang akan diakhiri. Nilainya dapat berupa:
READ_ONLY_TRANSACTIONS: hanya mengakhiri kueri hanya baca atauSELECT. Nilai ini merupakan default-nya jikatransactionKillTypetidak ditentukan.ALL_TRANSACTIONS: mengakhiri kueri yang berjalan yang melebihi batas, termasuk kueri dengan operasi tulis. Ini mencakupINSERT,UPDATE,DELETE, dan pernyataanDDLlainnya.
- EXCLUSION_LIST: daftar string
yang akan dikecualikan. Anda dapat memberikan entri sebagai
user@hostatau pengguna mandiri, yang secara default ditetapkan keuser@%. Daftar ini mendukung karakter pengganti%dan_untuk pencocokan di bagian host. - CPU_UTILIZATION_THRESHOLD_PERCENT: persentase penggunaan CPU keseluruhan yang akan dilampaui secara konsisten.
Contoh,
90. Nilai minimum adalah10dan nilai maksimumnya adalah99. Default-nya adalah0, yang dinonaktifkan. - MEMORY_USAGE_THRESHOLD_PERCENT: persentase penggunaan memori keseluruhan yang akan dilampaui secara konsisten.
Contoh,
90. Nilai minimum adalah10dan nilai maksimumnya adalah99. Default-nya adalah0, yang dinonaktifkan. - TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT:
nilai minimum untuk transaksi yang diizinkan berada dalam status
LOCK WAIT. Misalnya,50. Nilai minimum adalah10dan nilai maksimumnya adalah10000. Default-nya adalah0, yang dinonaktifkan. - SEMAPHORE_WAIT_THRESHOLD_COUNT:
nilai minimum untuk jumlah thread yang menunggu semaphor InnoDB dari
perintah
SHOW ENGINE INNODB STATUS. Misalnya,20. Nilai minimum adalah10dan nilai maksimumnya adalah10000. Default-nya adalah0, yang dinonaktifkan. - HISTORY_LIST_LENGTH_THRESHOLD_COUNT:
batas jumlah InnoDB History List Length (HLL) yang diizinkan
untuk database.
Contoh,
100000. Nilai minimum adalah10000dan nilai maksimumnya adalah10000000. Default-nya adalah0, yang dinonaktifkan.
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
Meminta isi JSON:
{
"name": "INSTANCE_ID",
"region": "REGION",
"databaseVersion": "DATABASE_VERSION",
"settings": {
"tier": "MACHINE_TYPE",
"edition": "EDITION_TYPE",
"dataCacheConfig": {
"dataCacheEnabled": DATA_CACHE_ENABLED
},
"backupConfiguration": {
"binaryLogEnabled": true,
"enabled": true
},
"passwordValidationPolicy": {
"enablePasswordPolicy": true
"minLength": "MIN_LENGTH",
"complexity": COMPLEXITY_DEFAULT,
"reuseInterval": "REUSE_INTERVAL",
"disallowUsernameSubstring": "DISALLOW_USERNAME_SUBSTRING"
},
"ipConfiguration": {
"privateNetwork": "PRIVATE_NETWORK",
"authorizedNetworks": [AUTHORIZED_NETWORKS],
"ipv4Enabled": false,
"enablePrivatePathForGoogleCloudServices": true,
"serverCaMode": "CA_MODE",
"serverCertificateRotationMode": "SERVER_CERTIFICATE_ROTATION_MODE",
"customSubjectAlternativeNames": "DNS_NAMES"
},
"dataApiAccess": "ALLOW_DATA_API",
"insightsConfig" : {
"queryInsightsEnabled" : QUERY_INSIGHTS_ENABLED,
"recordClientAddress" : RECORD_CLIENT_ADDRESS,
"recordApplicationTags" : RECORD_APPLICATION_TAGS,
"queryStringLength" : QUERY_STRING_LENGTH,
"queryPlansPerMinute" : QUERY_PLANS_PER_MINUTE,
"enableEnhancedQueryInsightsEnabled": ENABLE_ENHANCED_QUERY_INSIGHTS_ENABLED
},
"performanceCaptureConfig": {
"enabled": PERFORMANCE_CAPTURE_ENABLED,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"cpuUtilizationThresholdPercent": CPU_UTILIZATION_THRESHOLD_PERCENT,
"memoryUsageThresholdPercent": MEMORY_USAGE_THRESHOLD_PERCENT,
"transactionLockWaitThresholdCount": TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT,
"semaphoreWaitThresholdCount": SEMAPHORE_WAIT_THRESHOLD_COUNT,
"historyListLengthThresholdCount": HISTORY_LIST_LENGTH_THRESHOLD_COUNT,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD,
"transactionKillThresholdSeconds": SECONDS,
"transactionKillType": TRANSACTION_TYPE,
"transactionKillExcludedUserHosts": [ EXCLUSION_LIST
]
},
}
"sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE"
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2019-09-25T22:19:33.735Z",
"operationType": "CREATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
Responsnya adalah operasi yang berjalan lama, yang mungkin memerlukan waktu beberapa menit untuk diselesaikan.
Memperbarui sandi root
Ketika instance selesai melakukan inisialisasi, perbarui sandi root:
Sebelum menggunakan data permintaan lain, buat pengganti berikut:
- project-id: project ID Anda.
- instance-id: ID instance yang dibuat di langkah sebelumnya
- root-password: sandi root yang diinginkan
Metode HTTP dan URL:
PUT https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/users?host=%25&name=root
Meminta isi JSON:
{
"name": "root",
"host": "%",
"password": "root-password"
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2019-09-26T14:32:30.592Z",
"startTime": "2019-09-26T14:32:30.594Z",
"endTime": "2019-09-26T14:32:33.518Z",
"operationType": "UPDATE_USER",
"name": "operation-id",
"targetId": "instance-id",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/operations/operation-id",
"targetProject": "project-id"
}
Mengambil alamat IPv4
Ambil alamat IPv4 yang ditetapkan secara otomatis untuk instance baru:
Sebelum menggunakan data permintaan lain, buat pengganti berikut:
- project-id: project ID Anda.
- instance-id: ID instance yang dibuat di langkah sebelumnya
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{
"kind": "sql#instance",
"state": "RUNNABLE",
"databaseVersion": "MYSQL_8_0_18",
"settings": {
"authorizedGaeApplications": [],
"tier": "db-f1-micro",
"kind": "sql#settings",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration": {
"authorizedNetworks": [],
"ipv4Enabled": true
},
"locationPreference": {
"zone": "us-west1-a",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"backupConfiguration": {
"startTime": "18:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "1",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
},
"etag": "--redacted--",
"ipAddresses": [
{
"type": "PRIMARY",
"ipAddress": "10.0.0.1"
}
],
"serverCaCert": {
...
},
"instanceType": "CLOUD_SQL_INSTANCE",
"project": "project-id",
"serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com",
"backendType": "SECOND_GEN",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id",
"connectionName": "project-id:region:instance-id",
"name": "instance-id",
"region": "us-west1",
"gceZone": "us-west1-a"
}
Cari kolom ipAddress dalam respons.
REST v1beta4
Buat instance
Contoh ini akan membuat sebuah instance. Beberapa parameter opsional, seperti cadangan dan logging biner juga disertakan. Untuk daftar lengkap parameter panggilan ini, lihat halaman instances:insert. Untuk mengetahui informasi tentang setelan instance, termasuk nilai yang valid untuk region, lihat Setelan instance
Jangan sertakan informasi sensitif atau informasi identitas pribadi
di ID instance Anda; informasi ini terlihat secara eksternal.
Anda tidak perlu menyertakan project ID dalam nama instance. Hal ini dilakukan secara otomatis jika
sesuai (misalnya, di file log).
Sebelum menggunakan data permintaan lain, buat pengganti berikut:
- PROJECT_ID: project ID Anda.
- INSTANCE_ID: ID instance Anda
- DATABASE_VERSION: versi database.
Misalnya:
MYSQL_9_7,MYSQL_8_4, atauMYSQL_8_0_37. Jika Anda tidak menentukan versi database, versi database defaultnya adalahMYSQL_8_4. - REGION: Region
- MACHINE_TYPE: jenis mesin Anda
- EDITION_TYPE: edisi Cloud SQL Anda .
- DATA_CACHE_ENABLED: (opsional) tetapkan ke
trueuntuk mengaktifkan cache data untuk instance Anda - PRIVATE_NETWORK: tentukan nama jaringan Virtual Private Cloud (VPC) yang ingin digunakan untuk instance ini. Akses layanan pribadi harus sudah dikonfigurasi untuk jaringan tersebut.
- AUTHORIZED_NETWORKS: Untuk koneksi IP publik, tentukan koneksi dari jaringan resmi yang dapat terhubung ke instance Anda.
- CA_MODE: tentukan
hierarki certificate authority
untuk instance, baik
GOOGLE_MANAGED_INTERNAL_CAmaupunGOOGLE_MANAGED_CAS_CA. Jika Anda tidak menentukanserverCaMode, konfigurasi defaultnya adalahGOOGLE_MANAGED_INTERNAL_CA. Fitur ini berada dalam Pratinjau. - SERVER_CERTIFICATE_ROTATION_MODE: Untuk rotasi sertifikat server otomatis untuk instance Anda,
tentukan
AUTOMATIC_ROTATION_DURING_MAINTENANCE. Jika Anda tidak menentukanserverCertificateRotationMode, konfigurasi defaultnya adalahNO_AUTOMATIC_ROTATION. - DNS_NAMES: tambahkan daftar yang dipisahkan koma yang berisi maksimal tiga nama DNS ke sertifikat server instance Cloud SQL Anda. Anda dapat mengamankan beberapa nama DNS dengan satu sertifikat. Fitur ini tersedia dalam Pratinjau dan hanya untuk instance
CUSTOMER_MANAGED_CAS_CA.
Anda dapat menggunakan kolom sqlNetworkArchitecture untuk menerapkan penggunaan arsitektur jaringan baru untuk instance setelah pembuatan, meskipun project belum sepenuhnya diupgrade.
Untuk mengetahui detail selengkapnya tentang arsitektur jaringan baru dan implikasinya, lihat
Mengupgrade instance ke arsitektur jaringan baru dan Mengalokasikan rentang alamat IP.
Untuk menetapkan kebijakan sandi saat membuat instance, sertakan objek passwordValidationPolicy dalam permintaan. Tetapkan parameter berikut, jika diperlukan:
enablePasswordPolicy: Mengaktifkan kebijakan sandi saat disetel ketrue.Untuk menghapus kebijakan sandi, Anda dapat menggunakan permintaan
PATCHdengannullsebagai nilai untukenablePasswordPolicy. Dalam kasus ini, parameter kebijakan sandi lainnya akan diatur ulang.minLength: Menentukan jumlah karakter minimum yang harus dimiliki sandi.complexity: Memeriksa apakah sandi merupakan kombinasi karakter huruf kecil, huruf besar, angka, dan non-alfanumerik. Nilai defaultnya adalahCOMPLEXITY_DEFAULT.reuseInterval: Menentukan jumlah sandi sebelumnya yang tidak dapat digunakan kembali.Hanya didukung di Cloud SQL untuk MySQL 8.0 dan yang lebih baru.
disallowUsernameSubstring: Mencegah penggunaan nama pengguna dalam sandi saat ditetapkan ketrue.
Untuk mengonfigurasi instance untuk Query Insights, buat penggantian yang sesuai di
bagian insightsConfig:
- QUERY_INSIGHTS_ENABLED: ditetapkan ke
trueuntuk mengaktifkan Query Insights untuk instance Anda. - RECORD_CLIENT_ADDRESS: tetapkan ke
trueuntuk menyimpan alamat IP klien tempat kueri berasal dan membantu Anda mengelompokkan data tersebut untuk menjalankan metrik pada kueri tersebut. Kueri berasal dari lebih dari satu host. Meninjau grafik kueri dari alamat IP klien dapat membantu mengidentifikasi sumber masalah. - RECORD_APPLICATION_TAGS: ditetapkan ke
trueuntuk menyimpan tag aplikasi yang membantu Anda menentukan API dan rute pengontrol tampilan model (MVC) yang membuat permintaan dan mengelompokkan data untuk menjalankan metrik pada tag tersebut. Opsi ini mengharuskan Anda mengomentari kueri dengan sekumpulan tag tertentu. Anda dapat melakukannya dengan menggunakan library instrumentasi otomatis pemetaan relasional objek (ORM) open source sqlcommenter. Informasi ini membantu Query Insights mengidentifikasi sumber masalah dan MVC tempat masalah tersebut berasal. Jalur aplikasi membantu Anda dalam pemantauan aplikasi. - QUERY_STRING_LENGTH: ditetapkan ke batas panjang kueri dalam byte,
Menetapkan batas panjang kueri default. Panjang kueri yang lebih tinggi lebih berguna untuk kueri analitis, tetapi juga memerlukan lebih banyak memori. Jika panjang kueri diubah, Anda harus memulai ulang instance.
Anda masih dapat menambahkan tag ke kueri yang melebihi batas panjang.
Untuk edisi Cloud SQL Enterprise, Anda dapat menentukan nilai dalam byte dari
256hingga4500. Panjang kueri default adalah1024byte. Untuk edisi Cloud SQL Enterprise Plus, Anda dapat menentukan batas dalam byte dari1hingga1048576. Nilai defaultnya adalah1024byte (1 KB). - QUERY_PLANS_PER_MINUTE: ditetapkan ke jumlah rencana kueri yang akan diambil per menit.
Secara default, maksimum 5 sampel rencana kueri yang dijalankan diambil per menit di semua database pada instance. Meningkatkan frekuensi sampling kemungkinan akan memberi Anda lebih banyak titik data, tetapi dapat menambah overhead performa. Untuk menonaktifkan pengambilan sampel, tetapkan nilai ini ke
0. Untuk edisi Cloud SQL Enterprise, Anda dapat mengubah nilainya dari 0 menjadi 20. Untuk edisi Cloud SQL Enterprise Plus, Anda dapat meningkatkan jumlah maksimum hingga 200 untuk memberikan lebih banyak titik data. - ENABLE_ENHANCED_QUERY_INSIGHTS_ENABLED: tetapkan ke
trueuntuk mengaktifkan Query Insights yang ditingkatkan untuk instance Anda.
Untuk bagian performanceCaptureConfig, sertakan setelan berikut.
Jika Anda tidak menetapkan nilai untuk setelan instance ini, pengambilan performa akan menggunakan nilai default untuk nilai minimum. Untuk mengetahui informasi lebih mendetail tentang nilai minimum yang ditetapkan oleh pemicu, lihat
Pemicu pengambilan performa.
- PERFORMANCE_CAPTURE_ENABLED: ditetapkan ke
falseuntuk menonaktifkan pengambilan performa MySQL untuk instance Anda. JikaqueryInsightsEnabledditetapkan ketrue, perekaman performa MySQL akan diaktifkan secara otomatis dan menerapkan nilai default ke kondisi pemicu berbasis nilai minimum. - PROBING_INTERVAL_SECONDS: bilangan bulat antara
30dan86400. Interval waktu, dalam detik, di antara pemeriksaan metrik. Default-nya adalah30. - PROBE_THRESHOLD: berapa kali batas harus dilampaui secara berturut-turut untuk
memicu pengambilan performa. Rentang yang valid adalah
1hingga20. Default-nya adalah3. - RUNNING_THREADS_THRESHOLD: untuk instance utama, jumlah minimum thread aktif yang dianggap melebihi batas. Contoh,
10. Harus lebih besar dari atau sama dengan10. Jika tidak ditetapkan, nilai defaultnya didasarkan pada ukuran instance. Default-nya adalahMIN(600, cpuCount * 20). Default ini adalah600atau jumlah vCPU pada instance dikalikan dengan20, mana saja yang lebih kecil. - SECONDS_BEHIND_SOURCE_THRESHOLD: untuk replika baca, jeda replikasi minimum, dalam
detik, yang dianggap melebihi batas. Harus lebih besar dari
1. Jumlah defaultnya adalah900 - TRANSACTION_DURATION_THRESHOLD: durasi, dalam detik, transaksi yang belum di-commit
sebelum transaksi dilacak dan disertakan dalam log pengambilan performa.
Contoh,
300. Nilai minimum adalah60. Default-nya adalah3600. - SECONDS: durasi, dalam detik, dari
transaksi yang berjalan lama yang akan diakhiri secara otomatis. Batas ini tidak dapat ditetapkan ke nilai yang lebih kecil dari nilai yang Anda tetapkan untuk parameter
transactionDurationThreshold(TRANSACTION_DURATION_THRESHOLD). - TRANSACTION_TYPE: menentukan kategori transaksi yang akan diakhiri. Nilainya dapat berupa:
READ_ONLY_TRANSACTIONS: hanya mengakhiri kueri hanya baca atauSELECT. Nilai ini merupakan default-nya jikatransactionKillTypetidak ditentukan.ALL_TRANSACTIONS: mengakhiri kueri yang berjalan yang melebihi batas, termasuk kueri dengan operasi tulis. Ini mencakupINSERT,UPDATE,DELETE, dan pernyataanDDLlainnya.
- EXCLUSION_LIST: daftar string
yang akan dikecualikan. Anda dapat memberikan entri sebagai
user@hostatau pengguna mandiri, yang secara default ditetapkan keuser@%. Daftar ini mendukung karakter pengganti%dan_untuk pencocokan di bagian host. - CPU_UTILIZATION_THRESHOLD_PERCENT: persentase penggunaan CPU keseluruhan yang akan dilampaui secara konsisten.
Contoh,
90. Nilai minimum adalah10dan nilai maksimumnya adalah99. Default-nya adalah0, yang dinonaktifkan. - MEMORY_USAGE_THRESHOLD_PERCENT: persentase penggunaan memori keseluruhan yang akan dilampaui secara konsisten.
Contoh,
90. Nilai minimum adalah10dan nilai maksimumnya adalah99. Default-nya adalah0, yang dinonaktifkan. - TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT:
nilai minimum untuk transaksi yang diizinkan berada dalam status
LOCK WAIT. Misalnya,50. Nilai minimum adalah10dan nilai maksimumnya adalah10000. Default-nya adalah0, yang dinonaktifkan. - SEMAPHORE_WAIT_THRESHOLD_COUNT:
nilai minimum untuk jumlah thread yang menunggu semaphor InnoDB dari
perintah
SHOW ENGINE INNODB STATUS. Misalnya,20. Nilai minimum adalah10dan nilai maksimumnya adalah10000. Default-nya adalah0, yang dinonaktifkan. - HISTORY_LIST_LENGTH_THRESHOLD_COUNT:
batas jumlah InnoDB History List Length (HLL) yang diizinkan
untuk database.
Contoh,
100000. Nilai minimum adalah10000dan nilai maksimumnya adalah10000000. Default-nya adalah0, yang dinonaktifkan.
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances
Meminta isi JSON:
{
"name": "INSTANCE_ID",
"region": "REGION",
"databaseVersion": "DATABASE_VERSION",
"settings": {
"tier": "MACHINE_TYPE",
"edition": "EDITION_TYPE",
"dataCacheConfig" {
"dataCacheEnabled": DATA_CACHE_ENABLED
},
"backupConfiguration": {
"binaryLogEnabled": true,
"enabled": true
},
"passwordValidationPolicy": {
"enablePasswordPolicy": true
"minLength": "MIN_LENGTH",
"complexity": COMPLEXITY_DEFAULT,
"reuseInterval": "REUSE_INTERVAL",
"disallowUsernameSubstring": "DISALLOW_USERNAME_SUBSTRING",
},
"ipConfiguration": {
"privateNetwork": "PRIVATE_NETWORK",
"authorizedNetworks": [AUTHORIZED_NETWORKS],
"ipv4Enabled": false,
"enablePrivatePathForGoogleCloudServices": true,
"serverCaMode": "CA_MODE",
"serverCertificateRotationMode": "SERVER_CERTIFICATE_ROTATION_MODE",
"customSubjectAlternativeNames": "DNS_NAMES"
},
"dataApiAccess": "ALLOW_DATA_API",
"insightsConfig": {
"queryInsightsEnabled" : QUERY_INSIGHTS_ENABLED,
"recordClientAddress" : RECORD_CLIENT_ADDRESS,
"recordApplicationTags" : RECORD_APPLICATION_TAGS,
"queryStringLength" : QUERY_STRING_LENGTH,
"queryPlansPerMinute" : QUERY_PLANS_PER_MINUTE,
"enableEnhancedQueryInsightsEnabled": ENABLE_ENHANCED_QUERY_INSIGHTS_ENABLED
},
"performanceCaptureConfig": {
"enabled": PERFORMANCE_CAPTURE_ENABLED,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"cpuUtilizationThresholdPercent": CPU_UTILIZATION_THRESHOLD_PERCENT,
"memoryUsageThresholdPercent": MEMORY_USAGE_THRESHOLD_PERCENT,
"transactionLockWaitThresholdCount": TRANSACTION_LOCK_WAIT_THRESHOLD_COUNT,
"semaphoreWaitThresholdCount": SEMAPHORE_WAIT_THRESHOLD_COUNT,
"historyListLengthThresholdCount": HISTORY_LIST_LENGTH_THRESHOLD_COUNT,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD,
"transactionKillThresholdSeconds": SECONDS,
"transactionKillType": TRANSACTION_TYPE,
"transactionKillExcludedUserHosts": [ EXCLUSION_LIST
]
},
},
"sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE",
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2019-09-25T22:19:33.735Z",
"operationType": "CREATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
Responsnya adalah operasi yang berjalan lama, yang mungkin memerlukan waktu beberapa menit untuk diselesaikan.
Memperbarui sandi root
Ketika instance selesai melakukan inisialisasi, perbarui sandi root:
Sebelum menggunakan data permintaan lain, buat pengganti berikut:
- project-id: project ID Anda.
- instance-id: ID instance yang dibuat di langkah sebelumnya
- root-password: sandi root yang diinginkan
Metode HTTP dan URL:
PUT https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/users?host=%25&name=root
Meminta isi JSON:
{
"name": "root",
"host": "%",
"password": "root-password"
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2019-09-26T14:32:30.592Z",
"startTime": "2019-09-26T14:32:30.594Z",
"endTime": "2019-09-26T14:32:33.518Z",
"operationType": "UPDATE_USER",
"name": "operation-id",
"targetId": "instance-id",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
"targetProject": "project-id"
}
Responsnya adalah operasi yang berjalan lama, yang mungkin memerlukan waktu beberapa menit untuk diselesaikan.
Mengambil alamat IPv4
Ambil alamat IPv4 yang ditetapkan secara otomatis untuk instance baru:
Sebelum menggunakan data permintaan lain, buat pengganti berikut:
- project-id: project ID Anda.
- instance-id: ID instance yang dibuat di langkah sebelumnya
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{
"kind": "sql#instance",
"state": "RUNNABLE",
"databaseVersion": "MYSQL_8_0_18",
"settings": {
"authorizedGaeApplications": [],
"tier": "db-f1-micro",
"kind": "sql#settings",
"pricingPlan": "PER_USE",
"replicationType": "SYNCHRONOUS",
"activationPolicy": "ALWAYS",
"ipConfiguration": {
"authorizedNetworks": [],
"ipv4Enabled": true
},
"locationPreference": {
"zone": "us-west1-a",
"kind": "sql#locationPreference"
},
"dataDiskType": "PD_SSD",
"backupConfiguration": {
"startTime": "18:00",
"kind": "sql#backupConfiguration",
"enabled": true,
"binaryLogEnabled": true
},
"settingsVersion": "1",
"storageAutoResizeLimit": "0",
"storageAutoResize": true,
"dataDiskSizeGb": "10"
},
"etag": "--redacted--",
"ipAddresses": [
{
"type": "PRIMARY",
"ipAddress": "10.0.0.1"
}
],
"serverCaCert": {
...
},
"instanceType": "CLOUD_SQL_INSTANCE",
"project": "project-id",
"serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com",
"backendType": "SECOND_GEN",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
"connectionName": "project-id:region:instance-id",
"name": "instance-id",
"region": "us-west1",
"gceZone": "us-west1-a"
}
Cari kolom ipAddress dalam respons.
Membuat endpoint tulis
Endpoint tulis adalah nama domain name service (DNS) global yang di-resolve ke alamat IP instance utama saat ini secara otomatis. Endpoint ini mengalihkan koneksi masuk ke instance utama baru secara otomatis jika terjadi operasi failover atau pengalihan replika. Anda dapat menggunakan endpoint tulis dalam string koneksi SQL, bukan alamat IP. Dengan menggunakan endpoint tulis, Anda dapat menghindari keharusan membuat perubahan koneksi aplikasi saat terjadi pemadaman layanan di region.
Untuk mengetahui informasi selengkapnya tentang cara menggunakan endpoint tulis untuk terhubung ke instance, lihat Terhubung ke instance menggunakan endpoint tulis.
Menentukan versi minor database untuk MySQL 8.0
Anda dapat menentukan versi minor dari instance MySQL 8.0 yang ada dengan menggunakan
gcloud atau REST API.
gcloud
Gunakan perintah
gcloud sql instances create
dengan flag --database-version.
Ganti variabel berikut sebelum menjalankan perintah:
- INSTANCE_NAME: nama instance
- DATABASE_VERSION: Versi minor database dari instance:
MYSQL_8_0_18,MYSQL_8_0_26,MYSQL_8_0_27,MYSQL_8_0_28,MYSQL_8_0_30,MYSQL_8_0_31,MYSQL_8_0_32,MYSQL_8_0_33,MYSQL_8_0_34,MYSQL_8_0_35,MYSQL_8_0_36,MYSQL_8_0_37,MYSQL_8_0_39,MYSQL_8_0_40,MYSQL_8_0_41,MYSQL_8_0_42,MYSQL_8_0_43,MYSQL_8_0_44,MYSQL_8_0_45, atauMYSQL_8_0_46(versi minor default untuk MySQL 8.0). Jika Anda menentukanMYSQL_8_0, versi minor default akan digunakan.Jika Anda tidak menentukan flag ini, versi utama default,
MYSQL_8_0, akan digunakan.
gcloud sql instances create INSTANCE_NAME \ --database-version=DATABASE_VERSION
Jika Anda membuat instance MySQL 8.0.35 atau yang lebih baru,
Anda dapat mengaktifkan upgrade versi minor otomatis dengan menentukan
flag --enable-auto-upgrade-minor-version.
Saat Anda mengaktifkan upgrade versi minor otomatis, instance Anda akan diupgrade ke versi minor default Cloud SQL untuk MySQL 8.0 selama update pemeliharaan terjadwal reguler.
Flag ini tidak tersedia untuk MySQL 8.0.34 dan versi yang lebih lama.
gcloud sql instances create INSTANCE_NAME \ --database-version=DATABASE_VERSION \ --enable-auto-upgrade-minor-version
Untuk informasi selengkapnya, lihat dokumentasi
membuat instance menggunakan gcloud.
REST v1
Gunakan permintaan POST dengan metode
instances:insert dan tanda databaseVersion.
POST https://sqladmin.googleapis.com/v1/projects/project-id/instances
- project_id: ID project.
- instance_id: nama instance
- databaseVersion: Versi database instance:
MYSQL_8_0_18,MYSQL_8_0_26,MYSQL_8_0_27,MYSQL_8_0_28,MYSQL_8_0_30,MYSQL_8_0_31,MYSQL_8_0_32,MYSQL_8_0_33,MYSQL_8_0_34,MYSQL_8_0_35,MYSQL_8_0_36,MYSQL_8_0_37,MYSQL_8_0_39,MYSQL_8_0_40,MYSQL_8_0_41,MYSQL_8_0_42,MYSQL_8_0_43,MYSQL_8_0_44,MYSQL_8_0_45, atauMYSQL_8_0_46(versi minor default untuk MySQL 8.0). Jika Anda menentukanMYSQL_8_0sebagai versi, versi minor default akan digunakan. Jika Anda tidak menentukan flagdatabaseVersion, versi utama default,MYSQL_8_0, akan digunakan.
Untuk informasi selengkapnya, baca dokumentasi tentang membuat instance menggunakan REST v1 API.
REST v1beta4
Gunakan permintaan POST dengan metode
instances:insert dan tanda databaseVersion.
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances
Sebelum menggunakan data permintaan apa pun, ganti variabel berikut:
- project_id: ID project.
- instance_id: nama instance
- databaseVersion:
Versi database instance:
MYSQL_8_0_18,MYSQL_8_0_26,MYSQL_8_0_27,MYSQL_8_0_28,MYSQL_8_0_30,MYSQL_8_0_31,MYSQL_8_0_32,MYSQL_8_0_33.MYSQL_8_0_34,MYSQL_8_0_35,MYSQL_8_0_36,MYSQL_8_0_37,MYSQL_8_0_39,MYSQL_8_0_40,MYSQL_8_0_41,MYSQL_8_0_42,MYSQL_8_0_43,MYSQL_8_0_44,MYSQL_8_0_45, atauMYSQL_8_0_46(versi minor default untuk MySQL 8.0). Jika Anda menentukanMYSQL_8_0, versi minor default akan digunakan. Jika Anda tidak menentukan flagdatabaseVersion, versi utama default,MYSQL_8_0, akan digunakan.
Untuk informasi selengkapnya, lihat dokumentasi tentang membuat instance menggunakan REST v1beta4 API.
Versi minor database untuk replika baca, clone, dan PITR
Saat membuat replika baca, Anda dapat menentukan versi minor database dari replika baca. Secara default, replika baca baru dibuat pada versi minor default.
Saat meng-clone instance, instance yang baru dibuat memiliki versi minor yang sama dengan versi sumber.
Saat menjalankan pemulihan point-in-time, instance yang baru dibuat memiliki versi minor database yang sama dengan versi minor sumber.
Jenis mesin
Menentukan memori dan inti virtual yang tersedia untuk instance Cloud SQL Anda. Anda dapat mengonfigurasi jenis mesin dari berbagai seri mesin. Ketersediaan berbagai seri mesin ditentukan oleh edisi dan region Cloud SQL Anda.
-
Untuk instance edisi Cloud SQL Enterprise Plus: Cloud SQL menawarkan jenis mesin yang telah ditetapkan sebelumnya dalam seri mesin berikut:
-
Untuk instance edisi Cloud SQL Enterprise: Cloud SQL menawarkan jenis mesin yang telah ditetapkan dan kustom dalam rangkaian mesin berikut:
Jika Anda memerlukan pemrosesan real-time, seperti pemrosesan transaksi online (OLTP), pastikan instance Anda memiliki cukup memori untuk memuat seluruh set pekerjaan. Namun, ada faktor lain yang dapat memengaruhi persyaratan memori, seperti jumlah koneksi aktif, dan proses overhead internal. Lakukan pengujian beban untuk menghindari masalah performa di lingkungan produksi Anda.
Saat mengonfigurasi instance, pilih memori dan vCPU yang cukup untuk menangani kebutuhan Anda, dan tingkatkan skala instance seiring meningkatnya persyaratan. Konfigurasi mesin dengan vCPU yang tidak memadai dapat kehilangan cakupan SLA-nya. Untuk informasi selengkapnya, lihat Panduan operasional.
Untuk mengetahui informasi selengkapnya, lihat Memilih seri mesin.
Memecahkan masalah
| Masalah | Pemecahan masalah |
|---|---|
Pesan error: The zone or region does not have sufficient
resources to handle the request at the moment. |
Zona yang dipilih tidak memiliki kapasitas untuk resource yang diminta atau jenis VM pada saat permintaan pembuatan instance. Mungkin ada permintaan operasional yang tinggi secara bersamaan di lokasi regional tertentu pada saat permintaan. Untuk mengatasi masalah ini, coba lagi membuat instance di zona lain atau coba lagi membuat instance di zona yang sama yang menerima error pada waktu yang berbeda. |
Pesan error: Failed to create subnetwork. Couldn't
find free blocks in allocated IP ranges. Please allocate new ranges for
this service provider. |
Tidak ada lagi alamat yang tersedia dalam rentang IP yang dialokasikan. Ada
beberapa kemungkinan skenario:
Untuk mengatasi masalah ini, Anda dapat memperluas rentang IP yang dialokasikan atau mengalokasikan rentang IP tambahan ke koneksi layanan pribadi. Untuk informasi selengkapnya, lihat Mengalokasikan rentang alamat IP. Jika menggunakan tanda Jika Anda mengalokasikan rentang baru, pastikan alokasinya tidak tumpang tindih dengan alokasi yang ada. Setelah membuat rentang IP baru, perbarui peering vpc dengan perintah berikut: gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com \ --ranges=OLD_RESERVED_RANGE_NAME,NEW_RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID \ --force Jika Anda memperluas alokasi yang sudah ada, pastikan untuk hanya menambah rentang alokasi dan tidak menguranginya. Misalnya, jika alokasi asli adalah 10.0.10.0/24, buat alokasi baru dengan minimal 10.0.10.0/23. Secara umum, jika dimulai dari alokasi /24, mengurangi /mask sebesar 1 untuk setiap kondisi (grup jenis instance tambahan, region tambahan) adalah aturan praktis yang baik. Misalnya, jika mencoba membuat kedua grup jenis instance pada alokasi yang sama, beralih dari /24 ke /23 sudah cukup. Setelah memperluas rentang IP yang ada, perbarui peering vpc dengan perintah berikut: gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com \ --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID |
Pesan error: Failed to create subnetwork. Router status is
temporarily unavailable. Please try again later. Help Token:
[token-ID]. |
Coba buat instance Cloud SQL lagi. |
Pesan error: HTTPError 400: Invalid request: Incorrect Service Networking config for instance: PROJECT_ID:INSTANCE_NAME:SERVICE_NETWORKING_NOT_ENABLED. |
Aktifkan Service Networking API menggunakan perintah berikut dan coba buat instance Cloud SQL lagi. gcloud services enable servicenetworking.googleapis.com \ --project=PROJECT_ID |
Pesan error: Failed to create subnetwork. Required
'compute.projects.get' permission for PROJECT_ID. |
Saat Anda membuat instance menggunakan alamat IP Pribadi, akun layanan akan dibuat tepat waktu menggunakan Service Networking API. Jika Anda baru saja mengaktifkan Service Networking API, akun layanan mungkin tidak akan dibuat dan pembuatan instance akan gagal. Dalam hal ini, Anda harus menunggu akun layanan diterapkan di seluruh sistem atau menambahkannya secara manual dengan izin yang diperlukan. |
Pesan error: More than 3 subject alternative names are not
allowed. |
Anda mencoba menggunakan SAN kustom untuk menambahkan lebih dari tiga nama DNS ke sertifikat server instance Cloud SQL. Anda tidak dapat menambahkan lebih dari tiga nama DNS ke instance. |
Pesan error: Subject alternative names %s is too long. The
maximum length is 253 characters. |
Pastikan nama DNS yang ingin Anda tambahkan ke sertifikat server instance Cloud SQL tidak memiliki lebih dari 253 karakter. |
Pesan error: Subject alternative name %s is invalid. |
Pastikan nama DNS yang ingin Anda tambahkan ke sertifikat server instance Cloud SQL memenuhi kriteria berikut:
|
Langkah berikutnya
- Buat database pada instance.
- Buat pengguna MySQL pada instance.
- Amankan dan kontrol akses ke instance.
- Menghubungkan ke instance dengan klien MySQL.
- Impor data ke database.
- Pelajari setelan instance.