MariaDB 10.6 kararlı sürüm

Bir yıllık geliştirme ve üç ön sürümden sonra, MariaDB 10.6 DBMS'nin yeni şubesinin ilk kararlı sürümü yayınlandı; burada geriye dönük uyumluluğu koruyan ve ek depolama motorlarının entegrasyonuyla ayırt edilen bir MySQL şubesi geliştiriliyor. ve gelişmiş yetenekler. Yeni şubeye destek, Temmuz 5'ya kadar 2026 yıl süreyle verilecek.

MariaDB'nin geliştirilmesi, bireysel satıcılardan bağımsız, tamamen açık ve şeffaf bir geliştirme süreci sonrasında bağımsız MariaDB Vakfı tarafından denetlenmektedir. MariaDB, birçok Linux dağıtımında (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) MySQL'in yerine geçmek üzere sağlanmıştır ve Wikipedia, Google Cloud SQL ve Nimbuzz gibi büyük projelerde uygulanmıştır.

MariaDB 10.6'daki önemli iyileştirmeler:

  • “CREATE TABLE|VIEW|SEQUENCE|TRIGGER”, “ALTER TABLE|SEQUENCE”, “RENAME TABLE|TABLES”, “DROP TABLE|VIEW|VIEW|TRIGGER|DATABASE” ifadelerinin atomik uygulaması sağlanır (ya ifade tamamen tamamlanır veya her şey orijinal durumuna döndürülür). Birden fazla tablonun aynı anda silindiği “DROP TABLE” işlemlerinde atomiklik her bir tablo düzeyinde sağlanır. Değişikliğin amacı, bir işlem sırasında sunucunun çökmesi durumunda bütünlüğün sağlanmasıdır. Daha önce, bir çökme sonrasında geçici tablolar ve dosyalar kalabiliyor, depolama motorlarındaki ve frm dosyalarındaki tabloların senkronizasyonu bozulabiliyor ve birden fazla tablo aynı anda yeniden adlandırıldığında tek tek tablolar adlandırılmadan kalabiliyordu. Bütünlük, yolu yeni "—log-ddl-recovery=file" (varsayılan olarak ddl-recovery.log) seçeneği aracılığıyla belirlenebilen bir durum kurtarma günlüğü tutularak sağlanır.
  • SQL 2008 standardında tanımlanan “SELECT… OFFSET…FETCH” yapısı hayata geçirilmiş olup, “WITH TIES” parametresini kullanma yeteneği ile belirli bir ofsetten başlayarak belirli sayıda satırı görüntülemenize olanak sağlar. başka bir sonraki değer ekleyin. Örneğin, "SELECT i FROM t1 ORDER BY i ASC OFFSET 1 ROWS FETCH FETCH İLK 3 SATIRI TIES İLE" ifadesi "SELECT i FROM t1 ORDER BY i ASC LIMIT 3 OFFSET 1" yapısından kuyrukta bir eleman daha çıkarması nedeniyle farklılık gösterir. (3 4 satır yerine basılacaktır).
  • InnoDB motoru için, kilidin ayarlanamadığı satırları hariç tutmanıza olanak tanıyan "SELECT ... SKIP LOCKED" sözdizimi uygulanmıştır ("PAYLAŞIM MODUNDA KİLİT" veya "GÜNCELLEME İÇİN").
  • Dizinleri yok sayma yeteneği uygulanmıştır (MySQL 8'de bu işlevselliğe "görünmez dizinler" adı verilir). Yok sayılacak bir dizini işaretlemek, ALTER TABLE deyimindeki IGNORED bayrağı kullanılarak yapılır; bundan sonra dizin görünür ve güncel kalır ancak optimizer tarafından kullanılmaz.
  • JSON verilerini ilişkisel forma dönüştürmek için JSON_TABLE() işlevi eklendi. Örneğin, bir JSON belgesi, bir SELECT deyimindeki FROM bloğu içinde belirtilebilen bir tablonun bağlamında kullanılmak üzere dönüştürülebilir.
  • Oracle DBMS ile geliştirilmiş uyumluluk: FROM bloğunun içindeki anonim alt sorgular için destek eklendi. MINUS yapısı uygulandı (EXCEPT'e eşdeğer). ADD_MONTHS(), TO_CHAR(), SYS_GUID() ve ROWNUM() işlevleri eklendi.
  • InnoDB motorunda boş tablolara ekleme işlemi hızlandırıldı. SIKIŞTIRILMIŞ dize biçimi varsayılan olarak salt okunur moda ayarlanmıştır. SYS_TABLESPACES şeması SYS_DATAFILES'ın yerini aldı ve dosya sistemindeki durumu doğrudan yansıtıyor. Geçici tablo alanı için tembel yazma desteği sağlanmıştır. MariaDB 5.5 ile uyumluluk amacıyla korunan eski sağlama toplamı algoritması desteği durduruldu.
  • Replikasyon sisteminde master_host parametre değerinin boyutu 60 karakterden 255 karaktere, master_user parametre değeri ise 128 karaktere çıkarılmıştır. Binary log’un saniye cinsinden son kullanma süresini yapılandırmak için binlog_expire_logs_seconds değişkeni eklenmiştir (daha önce sıfırlama süresi expiration_logs_days değişkeni aracılığıyla yalnızca gün cinsinden belirlenir).
  • Galera eşzamanlı çoklu yönetici çoğaltma mekanizması, WSREP (Yazma Kümesi ÇOĞALTMA) API parametrelerini yapılandırmak için wsrep_mode değişkenini uygular. Kümeyi durdurmadan Galera'nın şifrelenmemiş iletişimlerden TLS'ye dönüştürülmesine izin verildi.
  • Veritabanı işlemlerini analiz etmek için bir dizi görünüm, işlev ve prosedür içeren sistem şeması şeması uygulandı.
  • Çoğaltma performansını analiz etmek için hizmet tabloları eklendi.
  • INFORMATION_SCHEMA.KEYWORDS ve INFORMATION_SCHEMA.SQL_FUNCTIONS görünümleri, mevcut anahtar sözcüklerin ve işlevlerin bir listesini görüntüleyen bilgi tabloları kümesine eklenmiştir.
  • TokuDB ve CassandraSE depoları kaldırıldı.
  • Utf8 kodlaması, dört baytlık temsil utf8mb4'ten (U+0000..U+10FFFF) üç baytlık utf8mb3'e (U+0000..U+FFFF Unicode aralığını kapsar) aktarılmıştır.
  • Systemd'de soket aktivasyonu için destek eklendi.
  • GSSAPI eklentisi, Active Directory grup adları ve SID'leri için destek ekledi.
  • $MYSQL_HOME/my.cnf dosyasına ek olarak $MARIADB_HOME/my.cnf yapılandırma dosyasının varlığının kontrol edilmesi eklendi.
  • Yeni sistem değişkenleri binlog_expire_logs_seconds, innodb_deadlock_report, innodb_read_only_compressed, wsrep_mode ve Innodb_buffer_pool_pages_lru_freed uygulandı.

Kaynak: opennet.ru

Yorum ekle