Logo do site

MariaDB 13 amplia compatibilidade com Oracle e melhora experiência do desenvolvedor e observabilidade

Publicado em: 21/09/2026 06:31
Última atualização: 21/09/2026 06:31

O MariaDB Community Server 13.0 atingiu a Disponibilidade Geral (GA) e agora é oficialmente estável. A versão traz uma série de novos recursos, depreciações e melhorias de desempenho, incluindo suporte ampliado a SQL procedural e novas capacidades de DML.

Mais perto do Oracle PL/SQL

Para facilitar a migração de aplicações corporativas baseadas em Oracle PL/SQL, o MariaDB 13 introduz suporte nativo aos tipos REF CURSOR e RECORD em parâmetros de rotinas e valores de retorno de funções.

O suporte a REF CURSOR fraco e forte aproxima o tratamento de cursores do MariaDB ao do Oracle PL/SQL. Esses cursores podem ser abertos, lidos (fetch) e fechados, e podem ser usados como variáveis locais, parâmetros de rotinas de pacotes ou tipos de retorno de funções de pacotes.

O suporte a RECORD foi ampliado para permitir seu uso como parâmetro de rotina armazenada ou tipo de retorno de função armazenada, além de variáveis locais. O RECORD também pode ser usado com REF CURSORs para trabalhar com dados de linha estruturados.

Nem REF CURSOR nem RECORD são atualmente suportados como parâmetro ou tipo de retorno para rotinas globais (não pertencentes a pacotes).

Novidades no DML

O MariaDB 13 também traz uma forma mais direta de trabalhar com dados modificados por comandos UPDATE, que agora podem retornar o conjunto de linhas modificadas usando a cláusula RETURNING. Combinada com OLD_VALUE(), ela permite recuperar valores antigos e novos em uma única ida ao banco de dados. Antes disponível apenas para INSERT e DELETE, a cláusula RETURNING está atualmente limitada a comandos de tabela única.

Otimização de consultas

Outra área de melhoria é a otimização de consultas, construída sobre o framework de hints do otimizador introduzido no MariaDB 12, tornando as dicas mais fáceis de usar em consultas complexas. O framework agora atribui automaticamente um nome de bloco de consulta a Views, CTEs e tabelas derivadas, permitindo que as dicas as atinjam sem o uso explícito de QB_NAME(). Além disso, os localizadores QB_NAME oferecem uma forma de especificar um caminho para blocos de consulta profundamente aninhados quando eles não podem ser alcançados apenas pelo nome.

Observabilidade e administração

Na parte de observabilidade e administração, o MariaDB 13 facilita a inspeção e a automação da configuração e dos metadados do servidor:

  • init_rpl_role, que especifica o papel de replicação por meio de uma opção de inicialização, agora é exposto como variável de sistema, permitindo verificar o papel de replicação do servidor diretamente com SHOW VARIABLES ou @@init_rpl_role.
  • Para tornar opções de índice e coluna específicas de cada mecanismo de armazenamento acessíveis programaticamente, as tabelas I_S.STATISTICS e I_S.COLUMNS agora incluem uma coluna CREATE_OPTIONS, expondo informações antes disponíveis apenas via SHOW CREATE TABLE.
  • A tabela I_S.SYSTEM_VARIABLES agora inclui colunas que indicam se uma variável de sistema está obsoleta.

Versão rolling, não LTS

O MariaDB é uma versão rolling, voltada a levar os recursos mais recentes rapidamente aos usuários, e não a ser o alvo de estabilidade de longo prazo (LTS). A próxima versão LTS planejada é o MariaDB 13.3.

Fonte: baseado na análise de Sergio De Simone, publicada pela InfoQ.

Conecte-se

Acompanhe meu conteúdo nas redes sociais ou entre em contato por e-mail.