Membandingkan Aurora SQL Versi saya 2 dan Aurora Versi saya 3 SQL - Amazon Aurora

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Membandingkan Aurora SQL Versi saya 2 dan Aurora Versi saya 3 SQL

Gunakan yang berikut ini untuk mempelajari tentang perubahan yang harus diperhatikan saat Anda memutakhirkan klaster Aurora My SQL version 2 Anda ke versi 3.

Dukungan Atomic Data Definition Language (DDL)

Salah satu perubahan terbesar dari My SQL 5.7 ke 8.0 adalah pengenalan Atomic Data Dictionary. Sebelum My SQL 8.0, kamus SQL data Saya menggunakan pendekatan berbasis file untuk menyimpan metadata seperti definisi tabel (.frm), pemicu (.trg), dan berfungsi secara terpisah dari metadata mesin penyimpanan (seperti InnoDB's). Ini memiliki beberapa masalah, termasuk risiko tabel menjadi "yatim piatu" jika sesuatu yang tidak terduga terjadi selama DDL operasi, menyebabkan metadata berbasis file dan mesin penyimpanan tidak sinkron.

Untuk memperbaikinya, My SQL 8.0 memperkenalkan Atomic Data Dictionary, yang menyimpan semua metadata dalam satu set tabel InnoDB internal dalam skema. mysql Arsitektur baru ini menyediakan cara transaksional ACIDyang sesuai untuk mengelola metadata database, memecahkan masalah “atomDDL” dari pendekatan berbasis file lama. Untuk informasi selengkapnya tentang Kamus Data Atom, lihat Penghapusan penyimpanan metadata berbasis file dan dukungan pernyataan definisi data atom di Manual Referensi Saya. SQL

Karena perubahan arsitektur ini, Anda harus mempertimbangkan hal berikut saat memutakhirkan dari Aurora SQL My versi 2 ke versi 3:

  • Metadata berbasis file dari versi 2 harus dimigrasikan ke tabel kamus data baru selama proses upgrade ke versi 3. Bergantung pada berapa banyak objek database yang dimigrasikan, ini bisa memakan waktu.

  • Perubahan juga telah memperkenalkan beberapa ketidakcocokan baru yang mungkin perlu ditangani sebelum Anda dapat meningkatkan dari My SQL 5.7 ke 8.0. Misalnya, 8.0 memiliki beberapa kata kunci cadangan baru yang dapat bertentangan dengan nama objek database yang ada.

Untuk membantu Anda mengidentifikasi ketidakcocokan ini sebelum memutakhirkan mesin, Aurora My SQL menjalankan serangkaian pemeriksaan kompatibilitas pemutakhiran (prechecks) untuk menentukan apakah ada objek yang tidak kompatibel dalam kamus database Anda, sebelum melakukan pemutakhiran kamus data. Untuk informasi lebih lanjut tentang prechecks, lihat Pra-cek pemutakhiran versi utama untuk Aurora My SQL.

Perbedaan fitur antara Aurora My SQL versi 2 dan 3

SQLFitur Amazon Aurora My berikut didukung di Aurora My SQL for My SQL 5.7, tetapi fitur ini tidak didukung di Aurora My untuk My 8.0: SQL SQL

  • Anda tidak dapat menggunakan Aurora My SQL versi 3 untuk Aurora Serverless kluster v1. Aurora SQL Versi saya 3 berfungsi dengan Aurora Serverless v2.

  • Mode lab tidak berlaku untuk Aurora My SQL versi 3. Tidak ada fitur mode lab di Aurora My SQL versi 3. Instan DDL menggantikan DDL fitur online cepat yang sebelumnya tersedia dalam mode lab. Sebagai contoh, lihat DDL instan (Aurora MySQL versi 3).

  • Cache kueri dihapus dari komunitas My SQL 8.0 dan juga dari Aurora SQL My versi 3.

  • Aurora SQL Versi saya 3 kompatibel dengan komunitas Fitur bergabung dengan SQL hash saya. Implementasi khusus Aurora dari gabungan hash di Aurora My version 2 tidak digunakan. SQL Untuk informasi tentang menggunakan hash join dengan kueri paralel Aurora, lihat Mengaktifkan hash join untuk klaster kueri paralel dan Aurora Petunjuk saya SQL. Untuk informasi penggunaan umum tentang gabungan hash, lihat Pengoptimalan Gabung Hash di Manual Referensi Saya SQL.

  • Prosedur mysql.lambda_async tersimpan yang tidak digunakan lagi di Aurora My SQL version 2 dihapus di versi 3. Untuk versi 3, gunakan fungsi asinkron lambda_async sebagai gantinya.

  • Karakter default yang ditetapkan di Aurora My SQL versi 3 adalah. utf8mb4 Di Aurora My SQL versi 2, set karakter default adalah. latin1 Untuk informasi tentang set karakter ini, lihat Set Karakter utf8mb4 (4-Byte UTF -8 Unicode Encoding) di Manual Referensi Saya. SQL

Beberapa SQL fitur Aurora My tersedia untuk kombinasi tertentu dari versi mesin AWS Region dan DB. Untuk detailnya, lihat Fitur yang didukung di Amazon Aurora oleh dan mesin Wilayah AWS Aurora DB.

Dukungan kelas instans

Aurora SQL Versi saya 3 mendukung serangkaian kelas instance yang berbeda dari Aurora My versi 2: SQL

  • Untuk instans yang lebih besar, Anda dapat menggunakan kelas instans modern seperti db.r5, db.r6g, dan db.x2g.

  • Untuk instans yang lebih kecil, Anda dapat menggunakan kelas instans modern seperti db.t3 dan db.t4g.

    catatan

    Kami menyarankan penggunaan kelas instans DB T hanya untuk server pengembangan dan pengujian, atau server non-produksi lainnya. Untuk detail selengkapnya tentang kelas instans T, lihat Menggunakan kelas instans T untuk pengembangan dan pengujian.

Kelas instance berikut dari Aurora My SQL version 2 tidak tersedia untuk Aurora My versi 3: SQL

  • db.r4

  • db.r3

  • db.t3.small

  • db.t2

Periksa skrip administrasi Anda untuk setiap CLI pernyataan yang membuat instance Aurora SQL My DB. Nama kelas instance hardcode yang tidak tersedia untuk Aurora SQL My versi 3. Jika perlu, ubah nama kelas instance menjadi nama yang didukung Aurora My SQL version 3.

Tip

Untuk memeriksa kelas instance yang dapat Anda gunakan untuk kombinasi spesifik Aurora SQL versi dan AWS Wilayah Saya, gunakan perintah. describe-orderable-db-instance-options AWS CLI

Untuk detail selengkapnya tentang kelas instans Aurora, lihat Kelas instans Amazon Aurora DB.

Perubahan parameter untuk Aurora Versi saya 3 SQL

Aurora My SQL version 3 mencakup parameter konfigurasi level cluster dan instance-level baru. Aurora SQL Versi saya 3 juga menghapus beberapa parameter yang ada di Aurora My versi 2. SQL Beberapa nama parameter diubah sebagai hasil dari inisiatif untuk bahasa inklusif. Untuk kompatibilitas mundur, Anda masih dapat mengambil nilai parameter menggunakan nama lama atau nama baru. Namun, Anda harus menggunakan nama baru untuk menentukan nilai parameter dalam grup parameter kustom.

Di Aurora My SQL versi 3, nilai lower_case_table_names parameter diatur secara permanen pada saat cluster dibuat. Jika Anda menggunakan nilai nondefault untuk opsi ini, siapkan grup parameter kustom Aurora SQL My version 3 Anda sebelum memutakhirkan. Kemudian, tentukan grup parameter selama operasi pembuatan klaster atau pemulihan snapshot.

catatan

Dengan database global Aurora berdasarkan Aurora MySQL, Anda tidak dapat melakukan peningkatan di tempat dari Aurora SQL My versi 2 ke versi 3 jika parameter dihidupkan. lower_case_table_names Gunakan metode pemulihan snapshot sebagai gantinya.

Di Aurora My SQL versi 3, read_only parameter init_connect dan tidak berlaku untuk pengguna yang memiliki hak istimewa. CONNECTION_ADMIN Ini termasuk pengguna master Aurora. Untuk informasi selengkapnya, lihat Model hak akses berbasis peran.

Untuk daftar lengkap parameter Aurora My SQL cluster, lihat. Parameter tingkat klaster Tabel ini mencakup semua parameter dari Aurora My SQL versi 2 dan 3. Tabel mencakup catatan yang menunjukkan parameter mana yang baru di Aurora My SQL versi 3 atau telah dihapus dari Aurora My versi 3. SQL

Untuk daftar lengkap parameter Aurora My SQL instance, lihat. Parameter tingkat instans Tabel ini mencakup semua parameter dari Aurora My SQL versi 2 dan 3. Tabel mencakup catatan yang menunjukkan parameter mana yang baru di Aurora My SQL versi 3 dan parameter mana yang dihapus dari Aurora My versi 3. SQL Ini juga mencakup catatan yang menunjukkan parameter mana yang dapat dimodifikasi di versi sebelumnya tetapi tidak Aurora My versi 3. SQL

Untuk informasi tentang nama parameter yang berubah, lihat Perubahan bahasa inklusif untuk Aurora Versi saya 3 SQL.

Variabel status

Untuk informasi tentang variabel status yang tidak berlaku untuk Aurora MySQL, lihat. Variabel SQL status saya yang tidak berlaku untuk Aurora My SQL

Perubahan bahasa inklusif untuk Aurora Versi saya 3 SQL

Aurora My SQL version 3 kompatibel dengan versi 8.0.23 dari edisi My community. SQL Aurora SQL Versi saya 3 juga mencakup perubahan dari My SQL 8.0.26 terkait dengan kata kunci dan skema sistem untuk bahasa inklusif. Misalnya, perintah SHOW REPLICA STATUS sekarang lebih disarankan daripada SHOW SLAVE STATUS.

CloudWatch Metrik Amazon berikut memiliki nama baru di Aurora SQL My versi 3.

Di Aurora My SQL versi 3, hanya nama metrik baru yang tersedia. Pastikan untuk memperbarui alarm atau otomatisasi lain yang bergantung pada nama metrik saat Anda meningkatkan ke Aurora My versi 3. SQL

Nama lama Nama baru
ForwardingMasterDMLLatency ForwardingWriterDMLLatency
ForwardingMasterOpenSessions ForwardingWriterOpenSessions
AuroraDMLRejectedMasterFull AuroraDMLRejectedWriterFull
ForwardingMasterDMLThroughput ForwardingWriterDMLThroughput

Variabel status berikut memiliki nama baru di Aurora My SQL versi 3.

Untuk kompatibilitas, Anda dapat menggunakan salah satu nama dalam rilis awal Aurora My SQL versi 3. Nama variabel status lama akan dihapus dalam rilis mendatang.

Nama yang akan dihapus Nama yang baru atau direkomendasikan
Aurora_fwd_master_dml_stmt_duration Aurora_fwd_writer_dml_stmt_duration
Aurora_fwd_master_dml_stmt_count Aurora_fwd_writer_dml_stmt_count
Aurora_fwd_master_select_stmt_duration Aurora_fwd_writer_select_stmt_duration
Aurora_fwd_master_select_stmt_count Aurora_fwd_writer_select_stmt_count
Aurora_fwd_master_errors_session_timeout Aurora_fwd_writer_errors_session_timeout
Aurora_fwd_master_open_sessions Aurora_fwd_writer_open_sessions
Aurora_fwd_master_errors_session_limit Aurora_fwd_writer_errors_session_limit
Aurora_fwd_master_errors_rpc_timeout Aurora_fwd_writer_errors_rpc_timeout

Parameter konfigurasi berikut memiliki nama baru di Aurora My SQL versi 3.

Untuk kompatibilitas, Anda dapat memeriksa nilai parameter di mysql klien dengan menggunakan salah satu nama dalam rilis Aurora My SQL versi 3 awal. Anda hanya dapat menggunakan nama baru saat memodifikasi nilai dalam grup parameter kustom. Nama parameter lama akan dihapus dalam rilis mendatang.

Nama yang akan dihapus Nama yang baru atau direkomendasikan
aurora_fwd_master_idle_timeout aurora_fwd_writer_idle_timeout
aurora_fwd_master_max_connections_pct aurora_fwd_writer_max_connections_pct
master_verify_checksum source_verify_checksum
sync_master_info sync_source_info
init_slave init_replica
rpl_stop_slave_timeout rpl_stop_replica_timeout
log_slow_slave_statements log_slow_replica_statements
slave_max_allowed_packet replica_max_allowed_packet
slave_compressed_protocol replica_compressed_protocol
slave_exec_mode replica_exec_mode
slave_type_conversions replica_type_conversions
slave_sql_verify_checksum replica_sql_verify_checksum
slave_parallel_type replica_parallel_type
slave_preserve_commit_order replica_preserve_commit_order
log_slave_updates log_replica_updates
slave_allow_batching replica_allow_batching
slave_load_tmpdir replica_load_tmpdir
slave_net_timeout replica_net_timeout
sql_slave_skip_counter sql_replica_skip_counter
slave_skip_errors replica_skip_errors
slave_checkpoint_period replica_checkpoint_period
slave_checkpoint_group replica_checkpoint_group
slave_transaction_retries replica_transaction_retries
slave_parallel_workers replica_parallel_workers
slave_pending_jobs_size_max replica_pending_jobs_size_max
pseudo_slave_mode pseudo_replica_mode

Prosedur tersimpan berikut memiliki nama baru di Aurora My SQL versi 3.

Untuk kompatibilitas, Anda dapat menggunakan salah satu nama dalam rilis awal Aurora My SQL versi 3. Nama prosedur lama akan dihapus dalam rilis mendatang.

Nama yang akan dihapus Nama yang baru atau direkomendasikan
mysql.rds_set_master_auto_position mysql.rds_set_source_auto_position
mysql.rds_set_external_master mysql.rds_set_external_source
mysql.rds_set_external_master_with_auto_position mysql.rds_set_external_source_with_auto_position
mysql.rds_reset_external_master mysql.rds_reset_external_source
mysql.rds_next_master_log mysql.rds_next_source_log

AUTO_ INCREMENT nilai

Di Aurora My SQL versi 3, Aurora mempertahankan AUTO_INCREMENT nilai untuk setiap tabel saat me-restart setiap instans DB. Di Aurora My SQL versi 2, AUTO_INCREMENT nilainya tidak dipertahankan setelah restart.

AUTO_INCREMENTNilai tidak dipertahankan saat Anda menyiapkan klaster baru dengan memulihkan dari snapshot, melakukan point-in-time pemulihan, dan mengkloning cluster. Dalam kasus ini, nilai AUTO_INCREMENT diinisialisasi ke nilai berdasarkan nilai kolom terbesar dalam tabel pada saat snapshot dibuat. Perilaku ini berbeda dari pada RDS My SQL 8.0, di mana AUTO_INCREMENT nilainya dipertahankan selama operasi ini.

Replikasi log biner

Dalam edisi komunitas My SQL 8.0, replikasi log biner diaktifkan secara default. Di Aurora My SQL versi 3, replikasi log biner dimatikan secara default.

Tip

Jika persyaratan ketersediaan tinggi Anda dipenuhi oleh fitur replikasi default Aurora, Anda dapat menonaktifkan replikasi log biner. Dengan begitu, Anda dapat menghindari overhead performa replikasi log biner. Anda juga dapat menghindari pemantauan dan pemecahan masalah terkait yang diperlukan untuk mengelola replikasi log biner.

Aurora mendukung replikasi log biner dari sumber My SQL 5.7 yang kompatibel dengan Aurora My versi 3. SQL Sistem sumber dapat berupa cluster Aurora My SQL DB, instans RDS for My SQL DB, atau instans Saya lokal. SQL

Seperti halnya komunitas MySQL, Aurora My SQL mendukung replikasi dari sumber yang menjalankan versi tertentu ke target yang menjalankan versi utama yang sama atau satu versi utama yang lebih tinggi. Misalnya, replikasi dari SQL sistem My 5.6 yang kompatibel ke Aurora My SQL versi 3 tidak didukung. Mereplikasi dari Aurora SQL My versi 3 ke sistem My 5.7—kompatibel atau SQL SQL My 5.6—kompatibel tidak didukung. Untuk detail tentang menggunakan replikasi log biner, lihat Replikasi antara Aurora dan SQL My atau antara Aurora dan cluster Aurora DB lainnya (replikasi log biner).

Aurora SQL Versi saya 3 mencakup peningkatan replikasi log biner di komunitas My SQL 8.0, seperti replikasi yang difilter. Untuk detail tentang peningkatan komunitas My SQL 8.0, lihat Bagaimana Server Mengevaluasi Aturan Pemfilteran Replikasi di Manual Referensi Saya SQL.

Kompresi transaksi untuk replikasi log biner

Untuk informasi penggunaan tentang kompresi log biner, lihat Kompresi Transaksi Log Biner di Manual SQL Referensi Saya.

Batasan berikut berlaku untuk kompresi log biner di Aurora My SQL versi 3:

  • Transaksi yang data log binernya lebih besar dari ukuran paket maksimum yang diizinkan tidak akan dikompresi. Ini benar terlepas dari apakah pengaturan kompresi log SQL biner Aurora My diaktifkan. Transaksi semacam itu direplikasi tanpa dikompresi.

  • Jika Anda menggunakan konektor untuk change data capture (CDC) yang belum mendukung My SQL 8.0, Anda tidak dapat menggunakan fitur ini. Kami menyarankan Anda menguji konektor pihak ketiga secara menyeluruh dengan kompresi log biner. Selain itu, kami menyarankan Anda melakukannya sebelum mengaktifkan kompresi binlog pada sistem yang menggunakan replikasi binlog untuk. CDC