Versión estable de MariaDB 10.5

Despois dun ano de desenvolvemento e catro prelanzamentos preparado primeira versión estable dunha nova rama de DBMS MariaDB 10.4, dentro do cal se está a desenvolver unha rama de MySQL que mantén a compatibilidade con versións anteriores e diferente integración de motores de almacenamento adicionais e capacidades avanzadas. O apoio á nova delegación prestarase durante 5 anos, ata xuño de 2025.

O desenvolvemento de MariaDB está supervisado pola Fundación MariaDB independente, seguindo un proceso de desenvolvemento completamente aberto e transparente que é independente dos provedores individuais. MariaDB ofrécese en lugar de MySQL en moitas distribucións de Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) e implementouse en proxectos tan grandes como Wikipedia, Google Cloud SQL и nimbuzz.

Chave melloras MariaDB 10.5:

  • Engadido motor de almacenamento S3, que che permite aloxar táboas MariaDB en Amazon S3 ou calquera outro almacenamento na nube pública ou privada que admita a API S3. Admítese a colocación de táboas regulares e particionadas en S3. Cando se colocan táboas particionadas na nube, pódense usar directamente, incluso desde outro servidor que teña acceso ao almacenamento S3.
  • Engadido motor de almacenamento ColumnStore, que almacena datos vinculados a columnas e usos masivamente paralelo arquitectura distribuída. O motor baséase nos desenvolvementos do almacenamento MySQL InfiniDB e está destinado a organizar o tratamento e a execución de consultas analíticas sobre grandes cantidades de datos (Data Warehouse).
    ColumnStore almacena os datos non fila por fila, senón por columnas, o que lle permite optimizar o rendemento da agrupación por columnas dunha gran base de datos, incluíndo petabytes de datos. Admítense a escala lineal, o almacenamento de datos comprimidos, a partición vertical e horizontal e a execución eficiente de solicitudes competidoras.

  • Todos os executables que comezan coa palabra "mysql" foron renomeados para usar a palabra "mariadb". Os nomes antigos almacénanse en forma de ligazóns simbólicas.
  • Engadiuse un novo tipo de datos INET6 para almacenar enderezos IPv6.
  • Traballouse para separar os privilexios en compoñentes máis pequenos. En lugar do privilexio SUPER xeral, proponse unha serie de privilexios selectivos "BINLOG ADMIN".
    "REPLAY BINLOG"
    "ADMINISTRADOR DE CONEXIÓN"
    "ADMINISTRADOR FEDERADO"
    "READ_ONLY ADMIN",
    "ADMINISTRADOR MESTRO DE REPLICACIÓNS"
    "REPLICATION SLAVE ADMIN" e
    "SET USUARIO".

  • O privilexio de "CLIENTE DE REPLICACIÓN" cambiou o nome a "MONITOR BINLOG" e a expresión "MOSTRAR ESTADO MESTRO" a "MOSTRAR ESTADO DE BINLOG". O cambio de nome aclara o comportamento e non está asociado á corrección política, o proxecto non abandona os termos mestre/escravo e mesmo engade novos privilexios "ADMINISTRADOR MESTRO" e "ADMINISTRADOR ESCLAVO". Ao mesmo tempo, engadiuse unha nova chave "REPLICA" á expresión SQL, que é sinónimo de "ESCLAVO".
  • Para algunhas expresións, modificáronse os privilexios necesarios para executalas. "MOSTRAR EVENTOS DE BINLOG" agora require privilexios de "MONITOR DE BINLOG" en lugar de "ESCLAVO DE REPLICACIÓN", "MOSTRAR HOSTS DE ESCLAVO" require privilexios de "ADMINISTRADOR DE MESTRES DE REPLICACIÓN" en lugar de "ESCLAVO DE REPLICACIÓN", "MOSTRAR ESTADO DE ESCLAVO" require "ADMINISTRADOR DE ESCLAVO DE REPLICACIÓN" ou " SUPER" en lugar de "REPLICATION CLIENT", "SHOW RELAYLOG EVENTS" require dereitos de "REPLICATION SLAVE ADMIN" en lugar de "REPLICATION SLAVE".
  • Deseños engadidos"INSERIR...VOLVER"E"SUBSTITUIR...VOLVER", devolvendo unha lista de entradas inseridas/substituídas no formulario coma se os valores fosen devoltos mediante unha expresión SELECT (semellante a "DELETE ... RETURNING").

    INSERIR NOS VALORES t2 (1,'Dog'),(2,'Lion'),(3,'Tiger'),(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 |
    +——+———+———+———-+

  • Expresións engadidas "EXCEPTO TODOS"E"INTERSECTAR TODO» para excluír/complementar o resultado cun conxunto específico de valores.
  • Agora é posible especificar comentarios dentro dos bloques "CREAR BASE DE DATOS" e "ALTERAR BASE DE DATOS".
  • Engadíronse construcións para renomear índices e columnas "ALTER TABLE... RENOME ÍNDICE / CLAVE"E"ALTER TABLE... CAMBIAR NOME DA COLUMNA«.
  • Nas operacións "ALTER TABLE" e "RENAME TABLE", engadiuse soporte para a condición "IF EXISTS" para realizar a operación só se existe a táboa;
  • Para índices en “CREATE TABLE” o atributo “VISIBLE«.
  • Engadiuse a expresión "CYCLE" para identificar bucles recursivos CTE.
  • Funcións engadidas JSON_ARRAYAGG и JSON_OBJECTAGG para devolver unha matriz ou un obxecto JSON cos valores da columna especificada.
  • Engadíronse táboas de información de servizo (THREAD_POOL_GROUPS, THREAD_POOL_QUEUES, THREAD_POOL_STATS e THREAD_POOL_WAITS) para o grupo de fíos (thread_pool).
  • A expresión ANALYZE amplíase para mostrar o tempo empregado comprobando o bloque WHERE e realizando operacións auxiliares.
  • O optimizador de procesamento de intervalos ten en conta as características "NON É NULLA".
  • O tamaño dos ficheiros temporais utilizados ao ordenar cos tipos VARCHAR, CHAR e BLOB reduciuse significativamente.
  • В rexistro binario, usado para organizar a replicación, engadíronse novos campos de metadatos, incluíndo a chave primaria, o nome da columna, o conxunto de caracteres e o tipo de xeometría. A utilidade mariadb-binlog e os comandos "MOSTRAR EVENTOS DE BINLOG" e "MOSTRAR EVENTOS DE RELAYLOG" proporcionan a visualización de marcas de replicación.
  • Construción TÁBOA DE SOLTAR agora é seguro elimina táboas que permanecen no motor de almacenamento aínda que non haxa ficheiros ".frm" ou ".par".
  • Implementouse unha versión acelerada de hardware da función crc32() para CPU AMD64, ARMv8 e POWER 8.
  • Cambiaron algunhas opcións de configuración predeterminadas. innodb_encryption_threads aumentou a 255 e max_sort_length aumentou de 4 a 8.
  • Preséntanse numerosas optimizacións de rendemento para o motor InnoDB.
  • Engadiuse soporte completo ao mecanismo de replicación multi-master síncrono de Galera GTID (ID de transacción global), identificadores de transacción comúns a todos os nodos do clúster.
  • Fíxose a transición a unha nova sucursal da biblioteca PCRE2 (Expresións regulares compatibles con Perl), en lugar da clásica serie PCRE 8.x.
  • Propuxéronse novas versións de arneses para conectarse ao DBMS MariaDB e MySQL desde programas en Python e C: Conector MariaDB/Python 1.0.0 и Conector MariaDB/C 3.1.9. A ligazón de Python cumpre coa API de base de datos de Python 2.0, está escrita en C e usa a biblioteca Connector/C para conectarse ao servidor.

Fonte: opennet.ru

Engadir un comentario