Mesin database, juga dikenal sebagai kernel database, adalah komponen inti dari sistem manajemen database. PolarDB for MySQL menyediakan versi mesin berikut: 5.6, 5.7, dan 8.0.
Gambar berikut mengilustrasikan posisi mesin database dalam arsitektur PolarDB for MySQL.
Komponen versi mesin dan hubungannya
Nomor versi lengkap dari PolarDB for MySQL terdiri dari tiga bagian: nomor versi utama (DB version), nomor versi minor, dan nomor revisi. Gambar berikut menunjukkan hubungan antara ketiga komponen tersebut, menggunakan contoh versi PolarDB for MySQL 8.0.
Nomor versi utama merupakan pengenal utama untuk versi mesin database PolarDB for MySQL. Dalam kebanyakan kasus, versi utama mencakup satu atau lebih versi minor. Sebagai contoh, versi utama 5.6 hanya mencakup satu versi minor, yaitu 5.6.16, sedangkan versi utama 8.0 mencakup dua versi minor, yaitu 8.0.1 dan 8.0.2. Fitur-fitur pada versi minor dapat sangat bervariasi. Pilih versi minor sesuai dengan kebutuhan bisnis Anda. Umumnya, setiap versi minor memiliki beberapa versi revisi. Versi revisi bertujuan untuk mengoptimalkan fitur yang ada, memperbaiki bug, atau menambahkan fitur baru. Versi minor dan revisi yang lebih baru biasanya menawarkan perlindungan keamanan yang lebih baik serta performa yang lebih optimal.
Versi mesin yang lebih baru dari PolarDB for MySQL mencakup semua fitur dari versi sebelumnya dan sepenuhnya kompatibel mundur. Oleh karena itu, setelah pemutakhiran versi mesin, aplikasi Anda dapat terus berfungsi tanpa perubahan. Untuk informasi lebih lanjut tentang cara memperbarui versi mesin, lihat Perbarui Versi Mesin.
Catatan rilis versi mesin
Alibaba Cloud menyediakan catatan rilis untuk setiap versi mesin. Catatan rilis mencakup fitur baru, modifikasi fitur, serta masalah yang telah diperbaiki. Untuk informasi lebih lanjut, lihat topik-topik berikut:
Kompatibilitas versi mesin
Berikut ini adalah informasi kompatibilitas versi mesin PolarDB for MySQL:
Mematuhi standar ANSI dan ISO SQL. Anda dapat mengatur parameter sql_mode kluster ke ANSI untuk mengaktifkan mode sesi ANSI. Untuk informasi lebih lanjut tentang cara memodifikasi parameter kluster, lihat Konfigurasikan parameter kluster dan node.
Mendukung Open Database Connectivity (ODBC) versi 0 hingga 3.51.
Mendukung fitur XML yang mematuhi standar W3C dan XPath.
PolarDB for MySQL 5.7 dan 8.0 mendukung tipe data JSON asli yang mematuhi standar RFC 7159 dan ECMA-262.
Tabel berikut mencantumkan kompatibilitas antara versi mesin PolarDB for MySQL dan edisi komunitas MySQL.
Versi Mesin | Versi Minor MySQL yang Kompatibel Penuh |
8.0.2 | 8.0.18 dan sebelumnya |
8.0.1 | 8.0.13 dan sebelumnya |
5.7 | 5.7.28 dan sebelumnya |
5.6 | 5.6.16 dan sebelumnya |
Sintaks SQL untuk fitur baru dalam PolarDB for MySQL
CREAT TABLE
Untuk memastikan bahwa PolarDB for MySQL kompatibel dengan pernyataan CREATE TABLE, Anda dapat menggunakan pernyataan SHOW CREATE TABLE, alat mysqldump, dan sinkronisasi log biner untuk menambahkan secara otomatis pernyataan CREATE TABLE. Perhatikan hal-hal berikut:
Metode 1: Jalankan pernyataan SHOW CREATE TABLE. Contoh:
CREATE TABLE `t1` (c1 int, KEY(c1) GLOBAL) ENGINE=InnoDB PARTITION BY HASH (`c1`) PARTITIONS 4; Query OK, 0 rows affected (0.06 sec) SHOW CREATE TABLE t1; +-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table | +-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | t1 | CREATE TABLE `t1` ( `c1` int(11) DEFAULT NULL, KEY `c1` (`c1`) /*!99990 800020207 GLOBAL */ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci /*!50100 PARTITION BY HASH (`c1`) PARTITIONS 4 */ |
Metode 2: Gunakan alat mysqldump. Contoh:
CREATE TABLE `t1` (c1 int, KEY(c1) GLOBAL) ENGINE=InnoDB PARTITION BY HASH (`c1`) PARTITIONS 4; DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci PARTITION BY HASH (`c1`); --result mysqldump --compact test t1 include/mysqlbinlog.inc /*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/; /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/; DELIMITER /*!*/; ROLLBACK/*!*/; # [empty] # original_commit_timestamp= MICROSECONDS-FROM-EPOCH (YYYY-MM-DD HOURS:MINUTES:SECONDS TZ) # immediate_commit_timestamp= MICROSECONDS-FROM-EPOCH (YYYY-MM-DD HOURS:MINUTES:SECONDS TZ) /*!80001 SET @@session.original_commit_timestamp= MICROSECONDS-FROM-EPOCH*//*!*/; /*!80014 SET @@session.original_server_version= ORIGINAL_SERVER_VERSION*//*!*/; /*!80014 SET @@session.immediate_server_version= IMMEDIATE_SERVER_VERSION*//*!*/; SET @@SESSION.GTID_NEXT= '#'/*!*/; use `test`/*!*/; SET TIMESTAMP=#/*!*/; SET @@session.pseudo_thread_id=#/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=1168113696/*!*/; SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/; /*!\C utf8mb4 *//*!*/; SET @@session.character_set_client=255,@@session.collation_connection=255,@@session.collation_server=255/*!*/; SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; /*!80011 SET @@session.default_collation_for_utf8mb4=255*//*!*/; /*!80013 SET @@session.sql_require_primary_key=0*//*!*/; CREATE TABLE `t1` ( `c1` int(11) DEFAULT NULL, KEY `c1` (`c1`) /*!99990 800020207 GLOBAL */ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci /*!50100 PARTITION BY HASH (`c1`) PARTITIONS 4 */ /*!*/; ......Metode 3: Gunakan sinkronisasi log biner.
Dalam contoh berikut, log biner disinkronkan dari PolarDB for MySQL 8.0.2.2.0 ke MySQL 8.0.27.
Gunakan Data Transmission Service (DTS) untuk menyinkronkan log biner dari PolarDB for MySQL 8.0.2.2.0 ke MySQL 8.0.27. Untuk informasi lebih lanjut, lihat Dari Kluster PolarDB for MySQL ke Instance ApsaraDB RDS for MySQL.
Lihat hasil sinkronisasi log biner pada PolarDB for MySQL 8.0.2.2.0 dan MySQL 8.0.27.
Contoh hasil pada PolarDB for MySQL 8.0.2.2.0:

Contoh hasil pada MySQL 8.0.27:
Seperti ditunjukkan pada gambar-gambar di atas, fitur baru yang disediakan dalam PolarDB for MySQL tidak muncul dalam hasil MySQL.CatatanSetelah data disinkronkan dari PolarDB for MySQL 8.0.2.2.0 ke MySQL 8.0.27, fitur baru yang disediakan dalam PolarDB for MySQL tidak lagi tersedia di MySQL.
Pernyataan DDL selain CREATE TABLE
Untuk pernyataan DDL selain CREATE TABLE, Anda harus menambahkan komentar secara manual ke pernyataan PolarDB for MySQL untuk memastikan kompatibilitas. Sintaks:
/*!99990 800020200 Sintaks SQL baru khusus PolarDB didukung >= versi 2.2.0 */Contoh:
CREATE TABLE `t1` (
`c1` int(11) DEFAULT NULL,
KEY `c1` (`c1`) /*!99990 800020207 GLOBAL */
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
/*!50100 PARTITION BY HASH (`c1`)
PARTITIONS 4 */Kueri versi mesin
Anda dapat menggunakan salah satu metode berikut untuk menanyakan versi mesin kluster:
Masuk ke Konsol PolarDB. Di halaman Basic Information kluster yang ingin Anda kueri versi mesinnya, periksa nilai parameter Kernel Version.

Jalankan pernyataan
show variables like "%polardb_version%";ataushow variables like '%rds_release_date%';untuk menanyakan versi mesin.CatatanUntuk kluster PolarDB for MySQL 5.6, Anda hanya dapat menanyakan versi mesin dengan menggunakan pernyataan
show variables like '%rds_release_date%';.Untuk informasi lebih lanjut tentang nomor versi mesin PolarDB for MySQL, lihat Komponen Versi Mesin dan Hubungannya.
Tingkatkan versi mesin
Tingkatkan versi utama dan perbarui versi minor
Tingkatkan versi utama
PolarDB for MySQL mendukung peningkatan versi utama mesin. Sebagai contoh, Anda dapat meningkatkan PolarDB for MySQL 5.6 ke PolarDB for MySQL 8.0. Untuk detail lebih lanjut tentang peningkatan versi utama, lihat Ikhtisar.
Perbarui versi minor
Dalam PolarDB for MySQL, Anda tidak dapat memperbarui versi minor secara langsung. Namun, Anda dapat menggunakan DTS untuk memigrasi atau menyinkronkan data dari kluster versi sumber ke kluster versi tujuan. Untuk informasi lebih lanjut tentang cara memigrasi atau menyinkronkan data, lihat Ikhtisar.
Tingkatkan versi revisi
Untuk informasi lebih lanjut tentang cara meningkatkan versi revisi, lihat Tingkatkan Versi Revisi.