Keluaran stabil MariaDB DBMS 10.5

Selepas setahun pembangunan dan empat pra-keluaran disediakan keluaran stabil pertama cawangan DBMS baharu MariaDB 10.4, di mana cawangan MySQL sedang dibangunkan yang mengekalkan keserasian ke belakang dan berbeza penyepaduan enjin storan tambahan dan keupayaan lanjutan. Sokongan untuk cawangan baharu akan disediakan selama 5 tahun, sehingga Jun 2025.

Pembangunan MariaDB diawasi oleh Yayasan MariaDB yang bebas, berikutan proses pembangunan yang terbuka dan telus sepenuhnya yang bebas daripada vendor individu. MariaDB dibekalkan bukannya MySQL dalam banyak pengedaran Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) dan telah dilaksanakan dalam projek besar seperti Wikipedia, Google Cloud SQL и nimbuzz.

kunci penambahbaikan MariaDB 10.5:

  • Enjin storan ditambah S3, yang membolehkan anda mengehoskan jadual MariaDB pada Amazon S3 atau mana-mana storan awan awam atau persendirian lain yang menyokong API S3. Meletakkan kedua-dua jadual biasa dan separa dalam S3 disokong. Apabila jadual yang dipisahkan diletakkan dalam awan, ia boleh digunakan secara langsung, termasuk dari pelayan lain yang mempunyai akses kepada storan S3.
  • Enjin storan ditambah Kedai Lajur, yang menyimpan data terikat pada lajur dan kegunaan selari secara besar-besaran seni bina yang diedarkan. Enjin ini berdasarkan perkembangan storan MySQL InfiniDB dan bertujuan untuk mengatur pemprosesan dan pelaksanaan pertanyaan analitikal ke atas jumlah data yang besar (Data Warehouse).
    ColumnStore menyimpan data bukan baris demi baris, tetapi mengikut lajur, yang membolehkan anda mengoptimumkan prestasi pengumpulan mengikut lajur daripada pangkalan data yang besar, termasuk petabait data. Penskalaan linear, storan data termampat, pembahagian menegak dan mendatar, dan pelaksanaan permintaan bersaing yang cekap disokong.

  • Semua executable bermula dengan perkataan "mysql" telah dinamakan semula untuk menggunakan perkataan "mariadb". Nama-nama lama disimpan dalam bentuk pautan simbolik.
  • Menambah jenis data baharu INET6 untuk menyimpan alamat IPv6.
  • Kerja telah dilakukan untuk memisahkan keistimewaan kepada komponen yang lebih kecil. Daripada keistimewaan SUPER am, satu siri keistimewaan terpilih “BINLOG ADMIN” dicadangkan,
    "BINLOG REPLAY"
    "SAMBUNGAN ADMIN"
    "ADMIN BERSEKUTU"
    "READ_ONLY ADMIN",
    "REPLICATION MASTER ADMIN"
    "ADMIN HAMBA REPLICASI" dan
    "SET PENGGUNA".

  • Keistimewaan "REPLICATION CLIENT" telah dinamakan semula kepada "BINLOG MONITOR" dan ungkapan "SHOW MASTER STATUS" kepada "SHOW BINLOG STATUS". Penamaan semula menjelaskan tingkah laku dan tidak dikaitkan dengan ketepatan politik, projek itu tidak meninggalkan istilah tuan/hamba malah menambah keistimewaan baharu “MASTER ADMIN” dan “SLAVE ADMIN”. Pada masa yang sama, kunci baharu "REPLICA" telah ditambahkan pada ungkapan SQL, yang merupakan sinonim untuk "HAMBA".
  • Untuk beberapa ungkapan, keistimewaan yang diperlukan untuk melaksanakannya telah diubah. "SHOW BINLOG EVENTS" kini memerlukan keistimewaan "BINLOG MONITOR" dan bukannya "REPLICATION SLAVE", "SHOW SLAVE Hosts" memerlukan keistimewaan "REPLICATION MASTER ADMIN" dan bukannya "REPLICATION SLAVE", "SHOW SLAVE STATUS" memerlukan "REPLICATION SLAVE ADMIN" atau " SUPER" dan bukannya "REPLICATION CLIENT", "SHOW RELAYLOG EVENTS" memerlukan hak "REPLICATION HAMAD ADMIN" dan bukannya "REPLICATION SLAVE".
  • Menambah reka bentuk "INSERT...KEMBALI"Dan"GANTI...KEMBALI", mengembalikan senarai entri yang dimasukkan/diganti dalam bentuk seolah-olah nilai dikembalikan menggunakan ungkapan SELECT (sama dengan "DELETE ... RETURNING").

    MASUKKAN KE DALAM NILAI t2 (1,'Anjing'),(2,'Singa'),(3,'Harimau'),(4,'Leopard')
    RETURNING id2,id2+id2,id2&id2,id2||id2;
    +——+———+———+———-+
    | id2 | id2+id2 | id2&id2 | id2||id2 |
    +——+———+———+———-+
    | 1 | 2 | 1 | 1 |
    | 2 | 4 | 2 | 1 |
    | 3 | 6 | 3 | 1 |
    | 4 | 8 | 4 | 1 |
    +——+———+———+———-+

  • Ungkapan tambahan "KECUALI SEMUA"Dan"INTERSECT SEMUA» untuk mengecualikan/menambah hasil dengan set nilai tertentu.
  • Kini anda boleh menentukan komen di dalam blok "CREATE DATABASE" dan "ALTER DATABASE".
  • Menambah binaan untuk menamakan semula indeks dan lajur "ALTER JADUAL ... NAMA SEMULA INDEX / KUNCI"Dan"UBAH JADUAL ... NAMA SEMULA LAjur".
  • Dalam operasi "ALTER TABLE" dan "RENAME TABLE", sokongan untuk keadaan "IF EXISTS" telah ditambahkan untuk melaksanakan operasi hanya jika jadual wujud;
  • Untuk indeks dalam "CREATE TABLE" atribut "VISIBLE".
  • Menambah ungkapan "CYCLE" untuk mengenal pasti gelung rekursif CTE.
  • Ciri ditambah JSON_ARRAYAGG и JSON_OBJECTAGG untuk mengembalikan tatasusunan atau objek JSON dengan nilai lajur yang ditentukan.
  • Menambahkan jadual maklumat perkhidmatan (THREAD_POOL_GROUPS, THREAD_POOL_QUEUES, THREAD_POOL_STATS dan THREAD_POOL_WAITS) untuk kumpulan benang (thread_pool).
  • Ungkapan ANALYZE dikembangkan untuk menunjukkan masa yang dihabiskan untuk menyemak blok WHERE dan melakukan operasi tambahan.
  • Pengoptimum pemprosesan julat mengambil kira ciri "IS NOT NULL".
  • Saiz fail sementara yang digunakan semasa mengisih dengan jenis VARCHAR, CHAR dan BLOB telah dikurangkan dengan ketara.
  • В log binari, digunakan untuk mengatur replikasi, medan metadata baharu telah ditambahkan, termasuk Kunci Utama, Nama Lajur, Set Aksara dan Jenis Geometri. Utiliti mariadb-binlog dan arahan "SHOW BINLOG EVENTS" dan "SHOW RELAYLOG EVENTS" menyediakan paparan bendera replikasi.
  • Pembinaan JADUAL HABIS sekarang dah selamat mengeluarkan jadual yang kekal dalam enjin storan walaupun tiada fail ".frm" atau ".par".
  • Melaksanakan versi dipercepatkan perkakasan bagi fungsi crc32() untuk CPU AMD64, ARMv8 dan POWER 8.
  • Menukar beberapa tetapan lalai. innodb_encryption_threads telah ditingkatkan kepada 255 dan max_sort_length telah ditingkatkan daripada 4 kepada 8.
  • Banyak pengoptimuman prestasi untuk enjin InnoDB dibentangkan.
  • Sokongan penuh telah ditambahkan pada mekanisme replikasi berbilang induk segerak Galera GTID (ID Transaksi Global), pengecam transaksi yang biasa kepada semua nod kelompok.
  • Peralihan ke cawangan baru perpustakaan telah dibuat PCRE2 (Ungkapan Biasa Serasi Perl), bukannya siri PCRE 8.x klasik.
  • Versi baharu abah-abah telah dicadangkan untuk menyambung ke MariaDB dan MySQL DBMS daripada program dalam Python dan C: Penyambung MariaDB/Python 1.0.0 и MariaDB Connector/C 3.1.9. Pengikatan Python mematuhi Python DB API 2.0, ditulis dalam C dan menggunakan perpustakaan Connector/C untuk menyambung ke pelayan.

Sumber: opennet.ru

Tambah komen