Halaman ini menjelaskan cara memigrasikan data ke instance yang menjalankan MySQL versi terbaru. Sebelum melanjutkan dengan metode ini, pertimbangkan untuk
mengupgrade versi utama database yang diterapkan.
Ada dua cara untuk mengupgrade versi utama database dari instance Cloud SQL untuk MySQL dengan memigrasikan data.
Opsi 1. Gunakan Database Migration Service (DMS).
DMS mendukung migrasi dari instance MySQL Cloud SQL. Anda juga dapat menggunakannya untuk mengupgrade versi MySQL.
Opsi 2. Pindahkan data Anda dari satu versi MySQL ke versi lain dengan mengekspor data dari instance saat ini dan mengimpor data tersebut ke instance baru yang menjalankan versi terbaru MySQL. Proses ini
melibatkan periode nonaktif; Anda menempatkan instance saat ini ke mode hanya baca sebelum
memulai ekspor.
Pertimbangkan fitur yang ditawarkan di setiap versi MySQL dan mengatasi inkompatibilitas alamat.
Versi utama baru memperkenalkan perubahan yang tidak kompatibel yang mungkin mengharuskan Anda
mengubah kode aplikasi, skema, atau setelan database sebelum
dapat mengupgrade instance database. Tinjau catatan rilis
versi utama target untuk menentukan inkompatibilitas yang perlu
Anda atasi. Jika Anda melewati versi utama, atasi ketidakcocokan
yang tercantum untuk setiap versi yang dilewati.
Jika Anda melakukan upgrade dari MySQL 5.7 ke 8.0, periksa perubahan pemberian izin pengguna di MySQL 8.0.
Cloud SQL untuk MySQL versi 8.0 menggunakan flag sistem baru yang disebut partial_revokes, yang disetel ke ON secara default. Tidak seperti MySQL 5.7, flag ini menghapus kemampuan untuk menggunakan karakter pengganti dalam perintah GRANT database.
Untuk memastikan pengguna database memiliki akses ke skema database yang benar,
ubah hak istimewa pengguna database sebelum mengupgrade ke MySQL 8.0.
Perbarui hak istimewa pengguna untuk menggunakan nama
lengkap skema database yang diperlukan, bukan menggunakan karakter pengganti.
Untuk mengetahui informasi lebih lanjut tentang cara kerja flag ini di MySQL 8.0, lihat Partial_revokes di MySQL 8.0.
Uji upgrade dengan uji coba.
Jalankan uji coba proses upgrade menyeluruh dengan instance pengujian
sebelum mengupgrade database produksi. Sebaiknya uji upgrade
menggunakan clone, bukan database produksi, untuk menghindari dampak performa dari
ekspor terhadap beban kerja produksi Anda.
Selain memvalidasi bahwa upgrade berhasil diselesaikan, jalankan
pengujian untuk memastikan bahwa aplikasi beroperasi seperti yang diharapkan pada database
yang telah diupgrade. Jika belum mengaktifkanpeningkatan penyimpanan otomatis,
catat penyimpanan disk yang digunakan oleh instance uji coba yang diupgrade untuk
menentukan apakah Anda perlu meningkatkan kapasitas penyimpanan untuk
instance produksi sebelum melakukan upgrade.
Tentukan waktu upgrade.
Memigrasikan data
Untuk memigrasikan data ke instance Cloud SQL yang menjalankan versi database yang lebih
baru, ikuti langkah-langkah berikut:
Buat instance dengan versi utama database target.
Pastikan instance target memiliki:
Penyimpanan yang memadai untuk menyimpan semua data instance saat ini.
Opsional. Setelah menyelesaikan proses upgrade, siapkan replikasi
antara instance sumber dan target menggunakan server eksternal untuk mengupdate
target dengan semua perubahan yang terjadi sejak dump awal
dimulai. Setelah kedua instance sinkron, Anda dapat mempromosikan
target instance.
Untuk informasi tentang cara menggunakan server eksternal guna menerapkan replikasi
berkelanjutan, lihat Mereplikasi dari server eksternal.
Update aplikasi Anda untuk terhubung ke instance baru.
Jika Anda yakin bahwa instance baru Anda berhasil beroperasi,
hapus instance lama.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Sulit dipahami","hardToUnderstand","thumb-down"],["Informasi atau kode contoh salah","incorrectInformationOrSampleCode","thumb-down"],["Informasi/contoh yang saya butuhkan tidak ada","missingTheInformationSamplesINeed","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-09-04 UTC."],[],[],null,["# Upgrade the database major version by migrating data\n\n\u003cbr /\u003e\n\nMySQL \\| [PostgreSQL](/sql/docs/postgres/upgrade-major-db-version-migrate \"View this page for the PostgreSQL database engine\") \\| [SQL Server](/sql/docs/sqlserver/upgrade-major-db-version-migrate \"View this page for the SQL Server database engine\")\n\n\u003cbr /\u003e\n\nThis page describes how to migrate your data to an instance running a later\nversion of MySQL. Before proceeding with this method, consider\n[upgrading the database major version in-place](/sql/docs/mysql/upgrade-major-db-version-inplace).\n| **Note:** To upgrade the minor version for MySQL 8.0, see [Upgrade the MySQL minor version for an instance](/sql/docs/mysql/upgrade-minor-db-version).\n\nThere are two ways to upgrade the database major version of your Cloud SQL\nfor MySQL instance by migrating your data.\n\n- **Option 1** . Use the [Database Migration Service (DMS)](/database-migration/docs/mysql/configure-source-database). DMS supports migrating from a Cloud SQL MySQL instance. You can also use it to upgrade your MySQL version.\n- **Option 2** . Move your data from one version of MySQL to another by *exporting* data from the current instance and *importing* that data into a new instance running the later version of MySQL. This process involves downtime; you put the current instance into read-only mode before starting the export.\n\nThis page discusses the second option.\n\nPlan a major version upgrade\n----------------------------\n\n1. Choose a target major version.\n\n See the [list of versions that Cloud SQL supports](/sql/docs/mysql/db-versions).\n2. Consider the features offered in each MySQL version and address\n incompatibilities.\n\n New major versions introduce incompatible changes that might require you to\n modify the application code, the schema, or the database settings before\n you can upgrade your database instance. Review the release notes of your\n target major version to determine the incompatibilities that you need to\n address. If you're skipping major versions, address the incompatibilities\n listed for each version that you're skipping.\n - [MySQL 8.4](https://dev.mysql.com/doc/refman/8.4/en/en/mysql-nutshell.html)\n - [MySQL 8.0](https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html)\n - [MySQL 5.7](https://dev.mysql.com/doc/refman/5.7/en/upgrading-from-previous-series.html)\n3. If you are upgrading from MySQL 5.7 to 8.0, then check for user grant changes\n in MySQL 8.0.\n\n Cloud SQL for MySQL version 8.0 uses a new system flag called\n `partial_revokes`, which is set to `ON` by default. Unlike MySQL 5.7, this\n flag removes the ability to use wildcard characters in database `GRANT` commands.\n To ensure database users have access to the correct database schemas,\n modify database user privileges before upgrading to MySQL 8.0.\n Update the user's privileges to use the full\n name of the required database schemas instead of using wildcard characters.\n\n For more information on how this flag works in MySQL 8.0,\n see [partial_revokes in MySQL 8.0](/sql/docs/mysql/flags#partial-revokes).\n4. Test the upgrade with a dry run.\n\n Perform a dry run of the end-to-end upgrade process with a test instance\n before you upgrade the production database. You might want to test the upgrade\n using a [clone](/sql/docs/mysql/clone-instance)\n instead of your production database to avoid any performance impact from the\n export on your production workload.\n\n In addition to validating that the upgrade completes successfully, run\n tests to ensure that the application behaves as expected on the upgraded\n database. If you haven't enabled [automatic storage increases](/sql/docs/mysql/instance-settings#automatic-storage-increase-2ndgen),\n take note of the disk storage used by the upgraded dry run instance to\n determine whether you need to increase the storage capacity for the\n production instance before upgrading.\n5. Decide when you want to upgrade.\n\n | **Note:** Upgrades require the instance to become unavailable for a period of time. Be sure to schedule your upgrade when database activity is low.\n\nMigrate your data\n-----------------\n\nTo migrate your data to a Cloud SQL instance running a more recent database\nversion, follow these steps:\n\n1. Create the instance with the target database major version.\n\n Make sure the target instance has:\n - Sufficient storage to hold all of the current instance's data.\n - The same authorized networks as the current instance. [Learn more](/sql/docs/mysql/configure-ip).\n - The same user accounts, with the same MySQL privileges and passwords.\n\n For more information, see [Creating an instance](/sql/docs/mysql/create-instance).\n2. Confirm that you can [connect to the new instance](/sql/docs/mysql/connect-admin-ip) with your local MySQL tools\n and update them if necessary.\n\n3. Put your current Cloud SQL instance into read-only mode by setting the\n `read_only` database flag to `On`.\n\n For information, see [Configure database flags](/sql/docs/mysql/flags).\n4. Export the current instance's data to a SQL dump file, following the\n instructions in\n [Export data for import into Cloud SQL](/sql/docs/mysql/import-export/import-export-sql).\n\n Do *not* export the `mysql` system database.\n5. [Create a Cloud Storage bucket](/storage/docs/creating-buckets)\n if needed, and upload your SQL dump file to the bucket.\n\n6. Import the data to the target instance, following the instructions in\n [Import MySQL databases from Cloud Storage](/sql/docs/mysql/import-export/import-export-sql).\n\n7. Optional. After completing the upgrade process, set up replication\n between the source and target instances by using an external server to update\n the target with all changes that have occurred since the initial dump was\n started. Once the two instances are in sync, you can promote the target\n instance.\n\n For information about using an external server to implement continuous\n replication, see [Replicating from an external server](/sql/docs/mysql/replication/replication-from-external_v1).\n8. Update your applications to connect to the new instance.\n\n9. When you're confident that your new instance is operating successfully,\n delete the old instance.\n\nWhat's next\n-----------\n\n- Learn about [Changes affecting upgrades to MySQL 8.4](https://dev.mysql.com/doc/refman/8.4/en/en/mysql-nutshell.html).\n- Learn about [Changes affecting upgrades to MySQL 8.0](https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html).\n- Learn about [Changes affecting upgrades to MySQL 5.7](https://dev.mysql.com/doc/refman/5.7/en/upgrading-from-previous-series.html).\n- Learn about the [Database Migration Service](/database-migration/docs).\n- Learn about [importing and exporting data](/sql/docs/mysql/import-export).\n- Learn about [options for connecting to an instance](/sql/docs/mysql/external-connection-methods).\n- Learn about [setting MySQL flags](/sql/docs/mysql/flags)."]]