Bản phát hành ổn định MariaDB 10.6

Sau một năm phát triển và ba bản phát hành sơ bộ, bản phát hành ổn định đầu tiên của nhánh mới của MariaDB 10.6 DBMS đã được xuất bản, trong đó một nhánh của MySQL đang được phát triển để duy trì khả năng tương thích ngược và được phân biệt bằng việc tích hợp các công cụ lưu trữ bổ sung và các khả năng tiên tiến. Hỗ trợ cho chi nhánh mới sẽ được cung cấp trong 5 năm, cho đến tháng 2026 năm XNUMX.

Quá trình phát triển MariaDB được Quỹ MariaDB độc lập giám sát, tuân theo quy trình phát triển hoàn toàn mở và minh bạch, độc lập với từng nhà cung cấp. MariaDB được cung cấp để thay thế MySQL trong nhiều bản phân phối Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) và đã được triển khai trong các dự án lớn như Wikipedia, Google Cloud SQL và Nimbuzz.

Những cải tiến chính trong MariaDB 10.6:

  • Việc thực thi nguyên tử các biểu thức “CREATE TABLE|VIEW|SEQUENCE|TRIGGER”, “ALTER TABLE|SEQUENCE”, “RENAME TABLE|TABLES”, “DROP TABLE|VIEW|VIEW|TRIGGER|DATABASE” được đảm bảo (biểu thức này là hoàn thành hoàn toàn hoặc mọi thứ được trả về trạng thái ban đầu). Trong trường hợp thao tác “DROP TABLE” xóa nhiều bảng cùng lúc, tính nguyên tử được đảm bảo ở cấp độ của từng bảng riêng lẻ. Mục đích của thay đổi là để đảm bảo tính toàn vẹn trong trường hợp máy chủ gặp sự cố trong quá trình hoạt động. Trước đây, sau sự cố, các bảng và tệp tạm thời có thể vẫn còn, quá trình đồng bộ hóa các bảng trong công cụ lưu trữ và tệp frm có thể bị gián đoạn và các bảng riêng lẻ có thể vẫn không được đổi tên khi một số bảng được đổi tên cùng một lúc. Tính toàn vẹn được đảm bảo bằng cách duy trì nhật ký khôi phục trạng thái, đường dẫn đến đó có thể được xác định thông qua tùy chọn mới “—log-ddl-recovery=file” (ddl-recovery.log theo mặc định).
  • Cấu trúc “SELECT ... OFFSET ... FETCH” được xác định trong tiêu chuẩn SQL 2008 đã được triển khai, cho phép bạn hiển thị một số hàng nhất định bắt đầu từ một khoảng bù được chỉ định, với khả năng sử dụng tham số “VỚI TIES” để đính kèm một giá trị tiếp theo khác. Ví dụ: biểu thức “SELECT i FROM t1 ORDER BY i ASC OFFSET 1 ROWS FETCH FIRST 3 ROWS WITH TIES” khác với cấu trúc “SELECT i FROM t1 ORDER BY i ASC LIMIT 3 OFFSET 1” bằng cách xuất thêm một phần tử ở đuôi (thay vì 3 4 dòng sẽ được in).
  • Đối với công cụ InnoDB, cú pháp “CHỌN ... BỎ QUA LOCKED” đã được triển khai, cho phép bạn loại trừ các hàng không thể đặt khóa (“LOCK IN SHARE MODE” hoặc “FOR UPDATE”).
  • Khả năng bỏ qua các chỉ mục đã được triển khai (trong MySQL 8, chức năng này được gọi là “chỉ mục vô hình”). Việc đánh dấu một chỉ mục để bỏ qua được thực hiện bằng cách sử dụng cờ IGNORED trong câu lệnh ALTER TABLE, sau đó chỉ mục này vẫn hiển thị và cập nhật nhưng không được trình tối ưu hóa sử dụng.
  • Đã thêm hàm JSON_TABLE() để chuyển đổi dữ liệu JSON thành dạng quan hệ. Ví dụ: một tài liệu JSON có thể được chuyển đổi để sử dụng trong ngữ cảnh của một bảng, có thể được chỉ định bên trong khối FROM trong câu lệnh SELECT.
  • Cải thiện khả năng tương thích với Oracle DBMS: Đã thêm hỗ trợ cho các truy vấn con ẩn danh bên trong khối TỪ. Cấu trúc MINUS đã được triển khai (tương đương với EXCEPT). Đã thêm các hàm ADD_MONTHS(), TO_CHAR(), SYS_GUID() và ROWNUM().
  • Trong công cụ InnoDB, việc chèn vào các bảng trống đã được tăng tốc. Định dạng chuỗi NÉN được đặt thành chế độ chỉ đọc theo mặc định. Lược đồ SYS_TABLESPACES đã thay thế SYS_DATAFILES và phản ánh trực tiếp trạng thái trong hệ thống tệp. Hỗ trợ ghi lười được cung cấp cho không gian bảng tạm thời. Hỗ trợ cho thuật toán tổng kiểm tra cũ, được giữ lại để tương thích với MariaDB 5.5, đã bị ngừng.
  • Trong hệ thống sao chép, kích thước của giá trị tham số master_host đã được tăng từ 60 lên 255 ký tự và master_user lên 128. Biến binlog_expire_logs_seconds đã được thêm vào để định cấu hình thời gian hết hạn của nhật ký nhị phân tính bằng giây (trước đây, thời gian đặt lại là chỉ được xác định theo ngày thông qua biến Expi_logs_days).
  • Cơ chế sao chép đa chủ đồng bộ của Galera triển khai biến wsrep_mode để định cấu hình các tham số API WSREP (Write Set REPlication). Cho phép chuyển đổi Galera từ thông tin liên lạc không được mã hóa sang TLS mà không dừng cụm.
  • Lược đồ hệ thống đã được triển khai, chứa một tập hợp các khung nhìn, hàm và thủ tục để phân tích các hoạt động cơ sở dữ liệu.
  • Đã thêm bảng dịch vụ để phân tích hiệu suất sao chép.
  • Các chế độ xem INFORMATION_SCHema.KEYWORDS và INFORMATION_SCHema.SQL_FUNCTIONS đã được thêm vào bộ bảng thông tin, hiển thị danh sách các từ khóa và chức năng có sẵn.
  • Kho lưu trữ TokuDB và CassandraSE đã bị xóa.
  • Mã hóa utf8 đã được chuyển từ dạng biểu diễn 8 byte utf4mb0000 (U+10..U+8FFFF) sang utf3mb0000 XNUMX byte (bao gồm phạm vi Unicode U+XNUMX..U+FFFF).
  • Đã thêm hỗ trợ kích hoạt ổ cắm trong systemd.
  • Plugin GSSAPI đã thêm hỗ trợ cho tên nhóm Active Directory và SID.
  • Đã thêm kiểm tra sự hiện diện của tệp cấu hình $MARIADB_HOME/my.cnf ngoài $MYSQL_HOME/my.cnf.
  • Các biến hệ thống mới binlog_expire_logs_seconds, innodb_deadlock_report, innodb_read_only_compression, wsrep_mode và Innodb_buffer_pool_pages_lru_freed đã được triển khai.

Nguồn: opennet.ru

Thêm một lời nhận xét