A Oracle lançou o MySQL DBMS 9.1.0, marcando um importante avanço no desenvolvimento deste banco de dados amplamente utilizado. As compilações estão disponíveis para as principais plataformas, incluindo Linux, FreeBSD, macOS e Windows, sendo o MySQL 9.1.0 parte do novo modelo de “Ramos de Inovação”. Essa nova abordagem oferece acesso antecipado a novas funcionalidades para os usuários que desejam explorar os recursos mais recentes do sistema, com novos lançamentos a cada três meses. O suporte para essas versões é temporário, com término após a publicação do próximo grande lançamento, como ocorreu com a descontinuação do suporte ao MySQL 9.0 após o lançamento do 9.1.
Em meados de 2025, espera-se que uma versão LTS (Long Term Support) seja disponibilizada, oferecendo uma opção mais estável e adequada para implementações de longo prazo. A próxima versão, MySQL 10.0, já está em desenvolvimento e será parte do próximo ciclo de inovação.
Principais mudanças e melhorias no MySQL 9.1.0
- Otimização no uso de gatilhos
O MySQL 9.1.0 aprimora o uso de gatilhos, especialmente em operações de leitura. Anteriormente, todos os gatilhos eram carregados na memória independentemente da operação que estava sendo realizada, consumindo recursos de maneira desnecessária em operações de leitura, como consultas SELECT. Agora, os gatilhos são processados em duas fases: primeiro, o MySQL lê os metadados do gatilho, e a análise completa e execução só ocorrem se a operação realmente modificar os dados. - Criação de visualizações com “IF NOT EXISTS”
Uma nova funcionalidade foi adicionada ao comando “CREATE VIEW”, permitindo o uso da expressão “IF NOT EXISTS”. Isso evita erros ao tentar criar visualizações já existentes, tornando o processo mais flexível. Se a visualização já existir, o comando simplesmente gera um aviso sem modificar a definição existente. - Operações atômicas e crash-safe para “CREATE DATABASE” e “DROP DATABASE”
Agora, as operações de criação e remoção de bancos de dados são totalmente atômicas e seguras contra falhas, desde que todas as tabelas no banco usem mecanismos de armazenamento que suportem essa funcionalidade (como o InnoDB). Essa melhoria elimina a necessidade de intervenção manual em casos de falhas anteriores durante a criação ou remoção de diretórios de bancos de dados. - Suporte ao tipo de dados VECTOR em programas JavaScript
O MySQL 9.1.0 expande o suporte ao tipo de dados VECTOR em programas armazenados em JavaScript. Agora, os valores do tipo VECTOR podem ser usados como parâmetros de entrada, saída e como valores de retorno em procedimentos armazenados escritos em JavaScript. - Suporte ao protocolo OpenID Connect
A autenticação via OpenID Connect foi integrada ao MySQL Enterprise Edition. Essa funcionalidade oferece uma nova opção de autenticação segura para aqueles que utilizam o MySQL em ambientes empresariais, aumentando a flexibilidade e segurança ao conectar-se ao DBMS. - Melhorias na saída do EXPLAIN
A operação EXPLAIN foi aprimorada para incluir informações mais detalhadas sobre leituras de múltiplos intervalos (multi-range reads) e estratégias semijoin. Essas melhorias tornam o processo de análise de consultas mais transparente e eficiente. - Correções de vulnerabilidades
Foram corrigidas 27 vulnerabilidades, incluindo a CVE-2024-5535, que foi classificada como crítica, com uma pontuação de 9.1/10. Essa vulnerabilidade permitia a exploração remota sem autenticação, potencialmente resultando em falhas ou vazamento de memória.
Essas atualizações fazem do MySQL 9.1.0 uma escolha atraente para desenvolvedores e administradores de banco de dados que buscam maior segurança, desempenho aprimorado e novos recursos de inovação.