إصدار MariaDB 10.6 مستقر

بعد عام من التطوير وثلاثة إصدارات أولية، تم نشر الإصدار المستقر الأول من الفرع الجديد لـ MariaDB 10.6 DBMS، والذي يتم من خلاله تطوير فرع من MySQL يحافظ على التوافق مع الإصدارات السابقة ويتميز بتكامل محركات التخزين الإضافية والإمكانيات المتقدمة. وسيتم تقديم الدعم للفرع الجديد لمدة 5 سنوات، حتى يوليو 2026.

يتم الإشراف على تطوير MariaDB من قبل مؤسسة MariaDB المستقلة، بعد عملية تطوير مفتوحة وشفافة تمامًا ومستقلة عن البائعين الفرديين. يتم توفير MariaDB كبديل لـ MySQL في العديد من توزيعات Linux (RHEL وSUSE وFedora وopenSUSE وSlackware وOpenMandriva وROSA وArch Linux وDebian) وتم تنفيذها في مشاريع كبيرة مثل Wikipedia وGoogle Cloud SQL وNimbuzz.

التحسينات الرئيسية في MariaDB 10.6:

  • يتم ضمان التنفيذ الذري للتعبيرات "CREATE TABLE|VIEW|SEQUENCE|TRIGGER"، "ALTER TABLE|SEQUENCE"، "RENAME TABLE|TABLES"، "DROP TABLE|VIEW|VIEW|TRIGGER|DATABASE" (إما أن يكون التعبير مكتمل بالكامل أو يتم إرجاع كل شيء إلى حالته الأصلية). في حالة عمليات "DROP TABLE" التي تحذف عدة جداول مرة واحدة، يتم ضمان الذرية على مستوى كل جدول على حدة. الغرض من التغيير هو ضمان التكامل في حالة تعطل الخادم أثناء العملية. في السابق، بعد حدوث عطل، كان من الممكن أن تظل الجداول والملفات المؤقتة، وقد تتعطل مزامنة الجداول في محركات التخزين وملفات frm، ويمكن أن تظل الجداول الفردية بدون إعادة تسمية عند إعادة تسمية عدة جداول في وقت واحد. يتم ضمان السلامة من خلال الحفاظ على سجل استرداد الحالة، والذي يمكن تحديد المسار إليه من خلال الخيار الجديد "—log-ddl-recovery=file" (ddl-recovery.log افتراضيًا).
  • تم تنفيذ بناء "SELECT... OFFSET...FETCH" المحدد في معيار SQL 2008، مما يسمح لك بعرض عدد معين من الصفوف بدءًا من إزاحة محددة، مع إمكانية استخدام المعلمة "WITH TIES" لـ إرفاق قيمة تالية أخرى. على سبيل المثال، يختلف التعبير "SELECT i FROM t1 ORDER BY i ASC OFFSET 1 ROWS FETCH FIRST 3 ROWS With TIES" عن البناء "SELECT i FROM t1 ORDER BY i ASC LIMIT 3 OFFSET 1" عن طريق إخراج عنصر آخر في الذيل (بدلا من 3 4 سيتم طباعة الخطوط).
  • بالنسبة لمحرك InnoDB، تم تنفيذ بناء الجملة "SELECT ... SKIP LOCKED"، والذي يسمح لك باستبعاد الصفوف التي لا يمكن تعيين قفل لها ("LOCK IN SHARE MODE" أو "FOR UPDATE").
  • تم تنفيذ القدرة على تجاهل الفهارس (في MySQL 8، تسمى هذه الوظيفة "الفهارس غير المرئية"). يتم وضع علامة على الفهرس المراد تجاهله باستخدام علامة "تجاهل" في عبارة ALTER TABLE، وبعد ذلك يظل الفهرس مرئيًا ومحدثًا، ولكن لا يتم استخدامه بواسطة المُحسِّن.
  • تمت إضافة وظيفة JSON_TABLE() لتحويل بيانات JSON إلى نموذج علائقي. على سبيل المثال، يمكن تحويل مستند JSON للاستخدام في سياق الجدول، والذي يمكن تحديده داخل كتلة FROM في عبارة SELECT.
  • تحسين التوافق مع Oracle DBMS: تمت إضافة دعم للاستعلامات الفرعية المجهولة داخل الكتلة FROM. تم تنفيذ بناء MINUS (أي ما يعادل باستثناء). تمت إضافة وظائف ADD_MONTHS() وTO_CHAR() وSYS_GUID() وROWNUM().
  • في محرك InnoDB، تم تسريع عملية الإدراج في الجداول الفارغة. يتم تعيين تنسيق السلسلة المضغوطة على وضع القراءة فقط بشكل افتراضي. حل نظام SYS_TABLESPACES محل SYS_DATAFILES ويعكس الحالة في نظام الملفات مباشرة. يتم توفير دعم الكتابة البطيئة لمساحة الجدول المؤقتة. تم إيقاف دعم خوارزمية المجموع الاختباري القديمة، والتي تم الاحتفاظ بها للتوافق مع MariaDB 5.5.
  • في نظام النسخ المتماثل، تمت زيادة حجم قيمة المعلمة master_host من 60 إلى 255 حرفًا، وmaster_user إلى 128. تمت إضافة المتغير binlog_expire_logs_thans لتكوين وقت انتهاء السجل الثنائي بالثواني (سابقًا، كان وقت إعادة التعيين هو يتم تحديده فقط خلال الأيام من خلال المتغيرexperi_logs_days).
  • تطبق آلية النسخ المتماثل متعدد الماجستير المتزامن من Galera متغير wsrep_mode لتكوين معلمات WSREP (Write Set REPlication) API. السماح بتحويل Galera من الاتصالات غير المشفرة إلى TLS دون إيقاف المجموعة.
  • تم تنفيذ مخطط النظام الذي يحتوي على مجموعة من المشاهدات والوظائف والإجراءات لتحليل عمليات قاعدة البيانات.
  • تمت إضافة جداول الخدمة لتحليل أداء النسخ المتماثل.
  • تمت إضافة طرق العرض INFORMATION_SCHEMA.KEYWORDS وINFORMATION_SCHEMA.SQL_FUNCTIONS إلى مجموعة جداول المعلومات، مما يعرض قائمة بالكلمات الأساسية والوظائف المتاحة.
  • تمت إزالة مستودعات TokuDB وCassandraSE.
  • تم نقل ترميز utf8 من التمثيل رباعي البايت utf8mb4 (U+0000..U+10FFFF) إلى utf8mb3 ثلاثي البايت (يغطي نطاق Unicode U+0000..U+FFFF).
  • تمت إضافة دعم لتنشيط المقبس في systemd.
  • أضاف المكوّن الإضافي GSSAPI دعمًا لأسماء مجموعات Active Directory ومعرفات الأمان (SIDs).
  • تمت إضافة التحقق من وجود ملف التكوين $MARIADB_HOME/my.cnf بالإضافة إلى $MYSQL_HOME/my.cnf.
  • تم تنفيذ متغيرات النظام الجديدة binlog_expire_logs_thans وinnodb_deadlock_report وinnodb_read_only_compressed وwsrep_mode وInnodb_buffer_pool_pages_lru_freed.

المصدر: opennet.ru

إضافة تعليق