Cloud SQL untuk MySQL mendukung beberapa versi minor MySQL 8.0 dan menyediakan instance MySQL 8.0 pada versi minor default, yang merupakan satu versi minor lebih awal dari versi minor terbaru.
Dalam setiap versi minor baru, penyedia database merilis fitur, patch keamanan, perbaikan bug, dan peningkatan performa baru.
MySQL 8.0 tidak mendukung downgrade.
Mengupgrade secara otomatis
Cloud SQL mendukung upgrade versi minor otomatis untuk instance Cloud SQL untuk MySQL 8.0 yang menjalankan MySQL versi 8.0.35 atau yang lebih baru.
Jika upgrade versi minor otomatis diaktifkan, instance Cloud SQL untuk MySQL 8.0 akan diupgrade secara otomatis ke versi minor default Cloud SQL untuk MySQL 8.0 selama update pemeliharaan terjadwal reguler. Anda tidak lagi diwajibkan untuk melakukan upgrade versi minor secara manual agar instance Cloud SQL untuk MySQL Anda tetap diupdate dengan patch keamanan dan perbaikan bug terbaru yang dirilis oleh komunitas MySQL.
Upgrade versi minor otomatis hanya terjadi selama peristiwa pemeliharaan yang dijadwalkan secara rutin, bukan selama pemeliharaan layanan mandiri.
Mengaktifkan upgrade otomatis untuk instance baru
Saat membuat instance Cloud SQL untuk MySQL 8.0 baru, pertimbangkan hal berikut terkait upgrade versi minor otomatis:
Jika Anda membuat instance Cloud SQL untuk MySQL 8.0 baru tanpa memilih versi minor, instance tersebut akan diaktifkan dengan upgrade versi minor otomatis secara default.
Jika Anda membuat instance Cloud SQL untuk MySQL 8.0 dan memilih versi minor 8.0.35 atau yang lebih baru, Anda dapat mengaktifkan upgrade versi minor otomatis selama pembuatannya.
Jika Anda membuat instance Cloud SQL untuk MySQL 8.0 dan memilih versi minor 8.0.34 atau yang lebih lama, Anda tidak dapat mengaktifkan upgrade versi minor otomatis. Anda harus melakukan upgrade versi minor instance secara manual.
Mengaktifkan upgrade otomatis untuk instance yang ada
Jika instance yang ada sudah diinstal dengan Cloud SQL untuk MySQL 8.0.35 atau yang lebih baru, Anda dapat mengaktifkan upgrade minor otomatis untuk instance Anda.
Gunakan langkah-langkah berikut untuk mengaktifkan upgrade otomatis pada instance MySQL 8.0 yang sudah ada. Prosedur ini tidak mengupgrade instance Anda. Instance akan menerima upgrade versi minor otomatis selama peristiwa pemeliharaan terjadwal berikutnya.
Konsol
Untuk mengaktifkan upgrade otomatis MySQL 8.0 untuk instance yang sudah ada, lakukan hal berikut:
-
Di konsol Google Cloud , buka halaman Instance Cloud SQL.
- Untuk membuka halaman Ringkasan instance, klik nama instance.
- Klik Edit.
- Di bagian Sesuaikan instance Anda, pilih Aktifkan upgrade versi minor otomatis.
- Klik Simpan.
gcloud
Untuk mengaktifkan upgrade otomatis MySQL 8.0 untuk instance yang sudah ada, lakukan hal berikut:
- Jalankan perintah berikut:
- Periksa metadata instance dengan menjalankan perintah berikut:
gcloud sql instances patch INSTANCE_NAME \ --enable-auto-upgrade-minor-version
Ganti INSTANCE_NAME dengan nama instance.
gcloud sql instances describe INSTANCE_NAME
Ganti INSTANCE_NAME dengan nama instance.
Di output, cari kolom DatabaseType, dan verifikasi
bahwa nilainya telah diupdate menjadi MYSQL_8_0.
Memeriksa pengaktifan upgrade minor otomatis
Untuk memeriksa apakah instance Anda diaktifkan untuk upgrade versi minor otomatis, jalankan perintah berikut:
gcloud sql instances describe INSTANCE_NAME \ --project=PROJECT_ID
Ganti INSTANCE_NAME dengan nama instance dan PROJECT_ID dengan project ID instance. Di output perintah, temukan kolom berikut.
databaseVersion: nilainya harusMYSQL_8_0databaseInstalledVersion: nilai harus berupa versi minor yang sama dengan atau lebih besar dariMYSQL_8_0_35
Mengupgrade secara manual
Bagian ini menjelaskan cara mengupgrade versi minor instance Cloud SQL untuk MySQL 8.0 secara manual. Jika Anda menjalankan Cloud SQL untuk MySQL versi 8.0.34 atau yang lebih lama, Anda harus mengupgrade versi minor Cloud SQL untuk MySQL secara manual.
Sebelum mengupgrade ke MySQL 8.0 versi minor baru, pahami perubahannya. Lihat Catatan Rilis MySQL 8.0. Jika Anda menggunakan Cloud SQL untuk MySQL 5.6 atau 5.7, Cloud SQL akan otomatis mengelola versi minor instance Anda. Saat Anda menyediakan instance baru, Cloud SQL akan otomatis mengonfigurasi instance dengan versi database terbaru yang tersedia. Selama pemeliharaan rutin, Cloud SQL akan otomatis mengupgrade instance Anda ke versi terbaru yang didukung.
Untuk mengupgrade versi minor database dari instance MySQL 8.0, Anda harus mengupdate instance dengan versi minor pilihan Anda, yang harus lebih besar daripada versi minor yang terinstal. Anda tidak dapat mengembalikan ke versi minor yang tidak ditentukan setelah instance disediakan.
Jika Anda menjalankan instance edisi Cloud SQL Enterprise Plus, upgrade versi minor akan selesai dengan periode nonaktif mendekati nol.
Sebelum mengupgrade secara manual
Cloud SQL mendukung upgrade versi minor untuk instance MySQL 8.0. MySQL 8.0 tidak mengizinkan downgrade. Jadi, sebelum mengupgrade instance utama, ikuti langkah-langkah berikut untuk memastikan keamanan data Anda.
Pilih versi minor target database.
gcloud
Untuk mengetahui informasi tentang menginstal dan memulai gcloud CLI, lihat Menginstal gcloud CLI. Untuk mengetahui informasi tentang cara memulai Cloud Shell, lihat Menggunakan Cloud Shell.
Untuk memeriksa versi minor database yang tersedia untuk upgrade di tempat, lakukan hal berikut:
- Jalankan perintah berikut.
- Di output perintah,
temukan bagian yang diberi label
upgradableDatabaseVersions. - Setiap subbagian menampilkan versi database yang tersedia untuk diupgrade. Di setiap subbagian, tinjau kolom berikut.
name: string versi database yang mencakup versi utama dan versi minor database yang dapat Anda targetkan untuk upgrade di tempat versi minor Cloud SQL for MySQL.
gcloud sql instances describe INSTANCE_NAME
Ganti INSTANCE_NAME dengan nama instance.
REST v1
Untuk memeriksa versi minor database yang tersedia untuk upgrade di tempat, gunakan metode
instances.getCloud SQL Admin API.Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- INSTANCE_NAME: Nama instance.
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
upgradableDatabaseVersions: { major_version: "MYSQL_8_0" name: "MYSQL_8_0_36" display_name: "MySQL 8.0.36" }REST v1beta4
Untuk memeriksa versi minor database yang tersedia untuk upgrade di tempat, gunakan metode
instances.getCloud SQL Admin API.Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- INSTANCE_NAME: Nama instance.
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
upgradableDatabaseVersions: { major_version: "MYSQL_8_0" name: "MYSQL_8_0_36" display_name: "MySQL 8.0.36" }Untuk mengetahui daftar lengkap versi database yang didukung Cloud SQL, lihat Kebijakan versi dan versi database.
Uji upgrade Anda di lingkungan staging.
Buat clone instance produksi Anda untuk berfungsi sebagai instance staging. Tindakan ini akan membuat instance database baru, dengan versi utama dan minor yang sama.
Melakukan upgrade versi minor pada instance staging.
Jalankan pengujian beban kerja untuk memverifikasi bahwa upgrade berhasil dan aplikasi Anda berperforma seperti yang diharapkan. Setelah pengujian berhasil, lanjutkan untuk mengupgrade instance replika baca Anda.
Upgrade instance replika baca Anda.
Upgrade semua replika baca dalam database ke versi minor target.
Verifikasi bahwa aplikasi Anda berfungsi seperti yang diharapkan.
Cadangkan instance utama Anda.
Seperti halnya update database yang signifikan, cadangkan instance utama Anda.
Mengupgrade versi minor
Anda dapat menentukan versi minor database dari instance yang ada dengan menggunakan gcloud atau
REST API. Melakukan upgrade versi minor pada saat database tidak
digunakan. Jika instance Anda perlu dimulai ulang, maka instance Anda akan mengalami periode nonaktif. Instance edisi Cloud SQL Enterprise Plus mengalami periode nonaktif nyaris nol.
Jika versi yang diinstal lebih tinggi daripada versi yang diminta,
permintaan akan ditolak.
gcloud
Gunakan perintah gcloud sql instances patch
dengan flag --database-version.
Ganti variabel berikut sebelum menjalankan perintah:
- INSTANCE_NAME: Nama instance.
- DATABASE_VERSION: Versi database dari instance. Jika Anda tidak menentukan flag ini, versi utama default akan digunakan.
gcloud sql instances patch INSTANCE_NAME \ --database-version=DATABASE_VERSION
REST v1
Gunakan permintaan PATCH dengan
metode
instances:patch dan flag databaseVersion.
Sebelum menggunakan salah satu data permintaan, buat pengganti berikut:
- PROJECT_ID: ID project
- INSTANCE_ID: ID instance
- DATABASE_VERSION: Versi database yang akan diupgrade.
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
Meminta isi JSON:
{
"databaseVersion": "DATABASE_VERSION"
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat 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": "2022-07-17T20:23:15.540Z",
"operationType": "UPDATE",
"name": "fa3f7304-ccf6-4d2f-a6f5-24df00000032",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/fa3f7304-ccf6-4d2f-a6f5-24df00000032",
"targetProject": "PROJECT_ID"
}
REST v1beta4
Gunakan permintaan PATCH dengan
metode
instances:patch dan flag databaseVersion.
Sebelum menggunakan salah satu data permintaan, buat pengganti berikut:
- PROJECT_ID: ID project
- INSTANCE_ID: ID instance
- DATABASE_VERSION: Versi database yang akan diupgrade.
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT-ID/instances/INSTANCE_ID
Meminta isi JSON:
{
"databaseVersion": "DATABASE_VERSION"
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON yang serupa seperti di bawah ini:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2022-07-17T20:23:15.540Z",
"operationType": "UPDATE",
"name": "fa3f7304-ccf6-4d2f-a6f5-24df00000032",
"targetId": "INSTANCE-ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/fa3f7304-ccf6-4d2f-a6f5-24df00000032",
"targetProject": "PROJECT_ID"
}
Memeriksa versi minor database yang diinstal
Saat Anda melihat informasi ringkasan instance, versi minor database yang diinstal dapat dilihat di bagian Konfigurasi.
Me-roll back upgrade
Saat menguji upgrade, jika menemukan masalah, Anda mungkin ingin melakukan roll back database untuk memulihkan instance database yang menjalankan versi minor sebelumnya.
Untuk memulihkan cadangan yang belum diupgrade, selesaikan langkah-langkah berikut:
- Menyediakan instance database pemulihan pada versi minor sebelumnya.
- Konfigurasikan setelan pada instance database pemulihan ke status belum diupgrade.
- Pulihkan cadangan belum diupgrade yang Anda ambil ke instance pemulihan.
Sebagai alternatif untuk memulihkan cadangan, lakukan pemulihan point-in-time dan buat instance baru.