Fitur Cloud SQL untuk MySQL

Halaman ini menjelaskan fitur dan kapabilitas utama Cloud SQL untuk MySQL. Cloud SQL juga tersedia untuk PostgreSQL dan SQL Server.

Fitur MySQL berdasarkan edisi Cloud SQL

Untuk mengetahui informasi selengkapnya tentang fitur untuk edisi Cloud SQL Enterprise Plus dan edisi Cloud SQL Enterprise Cloud SQL untuk MySQL, lihat Pengantar edisi Cloud SQL.

Fitur MySQL umum yang didukung untuk Cloud SQL

  • Database MySQL Community Edition yang terkelola sepenuhnya di cloud.
  • Instance tersedia di Amerika, Uni Eropa, Asia, dan Australia. Lihat semua lokasi tempat Anda dapat membuat instance Cloud SQL.
  • Mendukung migrasi dari database sumber ke database tujuan Cloud SQL menggunakan Database Migration Service (DMS).
  • Data pelanggan yang dienkripsi di jaringan internal Google serta di tabel database, file sementara, dan cadangan.
  • Dukungan untuk koneksi eksternal yang aman menggunakan Proxy Auth Cloud SQL atau protokol SSL/TLS.
  • Dukungan untuk IP pribadi (akses layanan pribadi).
  • Replikasi data di antara beberapa zona dengan failover otomatis.
  • Impor dan ekspor database menggunakan mysqldump, atau impor dan ekspor file CSV.
  • Dukungan untuk protokol kabel MySQL dan konektor MySQL standar.
  • Pencadangan otomatis, pencadangan on-demand, dan pemulihan point-in-time.
  • Cloning instance.
  • Integrasi dengan logging dan pemantauan Google Cloud Observability.
  • Mematuhi ISO/IEC 27001.

Bahasa aplikasi yang didukung untuk Cloud SQL untuk MySQL

Anda dapat menggunakan Cloud SQL dengan aplikasi App Engine yang berjalan di lingkungan fleksibel yang ditulis dalam:

  • C#
  • Go
  • Java
  • Node.js
  • PHP
  • Python
  • Ruby

Anda juga dapat menggunakan Cloud SQL dengan aplikasi eksternal yang menggunakan protokol MySQL standar.

Cara terhubung ke instance Cloud SQL untuk MySQL

Anda dapat terhubung ke instance Cloud SQL melalui berikut ini:

Menghubungkan ke Cloud SQL dengan Akses Google Pribadi tidak akan didukung. Akses layanan pribadi didukung. Untuk informasi selengkapnya, lihat Opsi Akses Pribadi untuk Layanan.

Pengelolaan pengguna di Cloud SQL untuk MySQL 8.0

Karena perubahan pada MySQL 8.0, Anda tidak dapat menggunakan pernyataan CREATE atau DELETE untuk pengelolaan pengguna MySQL. Anda juga tidak dapat mengubah hak istimewa pengguna menggunakan pernyataan INSERT, UPDATE, atau DELETE. Sebagai gantinya, gunakan pernyataan CREATE USER, DROP USER, GRANT, dan REVOKE untuk mengubah hak istimewa pengguna. Untuk informasi selengkapnya, lihat Catatan pengelolaan akun.

Catatan: Abaikan informasi dalam catatan Pengelolaan akun tentang cara menjalankan mysql_upgrade untuk mengupgrade ke versi 8.0. Sebagai gantinya, upgrade menggunakan prosedur dalam Mengupgrade MySQL pada instance.

Perbedaan antara MySQL standar dan Cloud SQL untuk MySQL

Secara umum, fungsi MySQL yang disediakan oleh instance Cloud SQL sama seperti fungsi yang disediakan oleh instance MySQL yang dihosting secara lokal. Namun, ada beberapa perbedaan antara instance MySQL standar dan instance Cloud SQL.

Fitur MySQL yang tidak didukung untuk Cloud SQL

Fitur berikut tidak didukung pada Cloud SQL untuk MySQL 5.6 dan 5.7:

  • Hak istimewa SUPER

Fitur berikut tidak didukung untuk Cloud SQL untuk MySQL 8.0:

Fitur berikut tidak didukung untuk Cloud SQL untuk MySQL 8.4:

  • GTID yang diberi tag. Untuk mengetahui informasi selengkapnya tentang GTID yang diberi tag, lihat "MySQL Replication: tagged GTIDs" di bagian Features Added or Changed in MySQL 8.4 dalam catatan rilis MySQL 8.4.

Selain itu, Cloud SQL untuk MySQL tidak memberikan hak istimewa berikut yang diperkenalkan di MySQL 8.4:

Plugin MySQL yang tidak didukung untuk Cloud SQL

Pernyataan MySQL yang tidak didukung untuk Cloud SQL

Pernyataan SQL berikut menghasilkan error dengan pesan Error 1290: The MySQL server is running with the Google option so it cannot execute this statement:

  • LOAD DATA INFILE

  • SELECT ... INTO OUTFILE

  • SELECT ... INTO DUMPFILE

  • INSTALL PLUGIN ...

  • UNINSTALL PLUGIN

  • CREATE FUNCTION ... SONAME ...

Pernyataan berikut tidak didukung karena instance MySQL menggunakan replikasi GTID:

  • pernyataan CREATE TABLE ... SELECT
  • Transaksi atau pernyataan yang memperbarui tabel transaksional dan non-transaksi

Pernyataan MySQL berikut tidak didukung pada Cloud SQL untuk MySQL 5.6 dan 5.7, tetapi didukung pada Cloud SQL untuk MySQL 8.0:

  • Pernyataan CREATE TEMPORARY TABLE di dalam transaksi

Untuk mengetahui informasi selengkapnya, lihat dokumentasi MySQL.

Fungsi MySQL yang tidak didukung untuk Cloud SQL

  • LOAD_FILE()

Fitur program klien MySQL yang tidak didukung untuk Cloud SQL

  • mysqldump menggunakan opsi --tab atau opsi yang digunakan dengan --tab. Hal ini karena hak istimewa FILE tidak diberikan kepada pengguna instance. Semua opsi mysqldump lainnya didukung. Untuk informasi tentang penggunaan opsi mysqldump yang mengoptimalkan file Anda untuk diimpor ke Cloud SQL, lihat Mengekspor dari server MySQL lokal Anda menggunakan mysqldump.

  • mysqlimport tanpa menggunakan opsi --local. Hal ini terjadi karena pembatasan LOAD DATA INFILE. Untuk mengimpor data ke instance Cloud SQL Anda, lihat mengimpor menggunakan file dump atau mengimpor menggunakan file CSV.

  • Jika Anda ingin mengimpor database dengan data biner ke instance Cloud SQL, Anda harus menggunakan opsi --hex-blob dengan mysqldump.

    Meskipun hex-blob bukan flag yang diperlukan saat Anda menggunakan instance server MySQL lokal dan klien mysql, flag ini diperlukan jika Anda ingin mengimpor setiap database dengan data biner ke instance Cloud SQL Anda. Untuk mengimpor data ke instance Cloud SQL Anda, lihat mengimpor menggunakan file dump atau mengimpor menggunakan file CSV.

  • Tidak semua opsi dan parameter MySQL diaktifkan untuk diedit sebagai flag Cloud SQL.

    Untuk meminta penambahan flag Cloud SQL yang dapat dikonfigurasi, gunakan grup Diskusi Cloud SQL.

  • InnoDB adalah satu-satunya mesin penyimpanan yang didukung. Untuk mendapatkan bantuan dalam mengonversi tabel dari MyISAM ke InnoDB, lihat Mengonversi tabel ke InnoDB dalam dokumentasi MySQL.

Preset opsi MySQL untuk Cloud SQL

Cloud SQL menjalankan MySQL dengan serangkaian opsi tertentu. Jika salah satu opsi dapat memengaruhi cara kerja aplikasi Anda, kami mencatatnya di sini sebagai informasi Anda.

skip-name-resolve

Flag ini memengaruhi cara penyelesaian nama host untuk koneksi klien. Lihat skip-name-resolve dalam dokumentasi MySQL.

log_bin

Flag ini melaporkan apakah logging biner aktif atau tidak. Jika opsi --log-bin digunakan, nilai variabel ini adalah ON; jika tidak, nilainya adalah OFF. Lihat log_bin dalam dokumentasi MySQL.

Autentikasi MySQL

Bagian ini menjelaskan perubahan yang dilakukan pada autentikasi bawaan MySQL.

Default plugin autentikasi MySQL 8.0

Cloud SQL untuk MySQL 8.0 menggunakan mysql_native_password sebagai plugin autentikasi default untuk pengguna baru, bukan dengan caching_sha2_password. Plugin mysql_native_password merupakan default untuk pengguna MySQL 5.6 dan 5.7.

Jika Anda ingin pengguna baru menggunakan plugin caching_sha2_password sebagai autentikasi default, Anda dapat mengonfigurasi flag instance Anda untuk default_authentication_plugin untuk menggunakan caching_sha2_password.

Untuk mengonfigurasi pengguna yang ada agar menggunakan caching_sha2_password, gunakan perintah ALTER USER untuk mengubah plugin autentikasi.

Pengguna yang memiliki autentikasi caching_sha2_password mungkin perlu menggunakan flag get-server-public-key saat terhubung. Untuk mengetahui detailnya, lihat Menyimpan dalam cache Autentikasi Pluggable SHA-2 dalam dokumentasi MySQL.

Default plugin autentikasi MySQL 8.4

Mulai Cloud SQL untuk MySQL 8.4, plugin caching_sha2_password adalah plugin autentikasi default. Semua pengguna internal dan akun pengguna baru yang Anda buat menggunakan plugin caching_sha2_password untuk autentikasi. Cloud SQL untuk MySQL 8.4 terus mendukung akun pengguna Cloud SQL yang ada yang menggunakan plugin mysql_native_password. Akun yang ada ini dapat terus terhubung ke instance Cloud SQL untuk MySQL setelah instance tersebut diupgrade ke MySQL 8.4.

Di Cloud SQL untuk MySQL 8.4, plugin autentikasi mysql_native_password tidak digunakan lagi. Setiap upaya untuk membuat akun pengguna baru dengan plugin autentikasi mysql_native_password yang tidak digunakan lagi akan menghasilkan error. Anda tidak dapat menetapkan authentication_policy akun di Cloud SQL untuk MySQL 8.4 agar menggunakan mysql_native_password.

Untuk mengubah akun pengguna database yang ada agar menggunakan plugin autentikasi caching_sha2_password, gunakan perintah berikut:

ALTER USER 'username'@'%'
IDENTIFIED WITH caching_sha2_password BY 'user_password';

Ganti username dan user_password dengan nilai untuk akun pengguna yang Anda perbarui.

Untuk informasi selengkapnya tentang implikasi perubahan ini terhadap kompatibilitas antara server, klien, dan konektor, lihat caching_sha2_password as the Preferred Authentication Plugin.

Perubahan pada flag sistem MySQL di Cloud SQL

Untuk beberapa flag sistem MySQL, Cloud SQL menggunakan nilai yang berbeda dari nilai default. Anda tidak dapat mengubah nilai untuk tanda ini. Untuk mengetahui daftar flag, lihat Flag sistem yang diubah di Cloud SQL.

Fitur Cloud SQL yang tidak didukung di Cloud SQL untuk MySQL 8.0 dan versi yang lebih baru

Cloud SQL untuk MySQL 8.0 dan versi yang lebih baru tidak mendukung konfigurasi ketersediaan tinggi (HA) Cloud SQL untuk MySQL lama yang menggunakan replika failover. Cloud SQL untuk MySQL 8.0 dan versi yang lebih baru hanya mendukung konfigurasi HA regional.