Qual é a diferença entre MariaDB e MySQL?


82

Qual é a diferença entre MariaDB e MySQL? Eu não estou muito familiarizado com os dois. Sou basicamente um desenvolvedor front-end na maior parte.

Eles são sintaticamente semelhantes? Onde essas duas linguagens de consulta diferem?

A Wikipedia menciona apenas a diferença entre o licenciamento:

O MariaDB é um ramo desenvolvido pela comunidade do banco de dados MySQL, o ímpeto é a manutenção da comunidade de seu status livre sob a GPL, em oposição a qualquer incerteza do status da licença do MySQL sob sua propriedade atual pela Oracle.


Respostas:


95

O MariaDB é um substituto drop-in binário compatível com versões anteriores do MySQL . O que isso significa é:

  • Os arquivos de arquivos de definição de tabela e dados (.frm) são compatíveis com binários.
  • Todas as APIs, protocolos e estruturas do cliente são idênticos.
  • Todos os nomes de arquivos, binários, caminhos, portas, soquetes e etc ... devem ser os mesmos.
  • Todos os conectores MySQL funcionam inalterados com o MariaDB.
  • O pacote mysql-client também funciona com o servidor MariaDB.

Nos cenários práticos mais comuns, o MariaDB versão 5.xy funcionará exatamente como o MySQL 5.xy, o MariaDB segue a versão do MySQL, ou seja, seu número de versão é usado para indicar com qual versão do MySQL é compatível.

O MariaDB surgiu como um fork do MySQL por Michael "Monty" Widenius, um dos desenvolvedores originais do MySQL e co-fundador do MySQL Ab. A Fundação MariaDB atua como custodiante do MariaDB.

A principal motivação por trás do MariaDB era fornecer uma versão floss do MySQL, caso a Oracle fosse corporativa com o MySQL. Vale a pena notar que Monty foi vocal contra a aquisição do MySQL (através da aquisição da Sun) pela Oracle.

Embora o MariaDB deva ser compatível com o MySQL, por um motivo ou outro, existem alguns problemas de compatibilidade e recursos diferentes :

  • O MariaDB inclui todos os mecanismos populares de código aberto,
  • O MariaDB reivindica várias melhorias na velocidade do MySQL e
  • existem algumas novas extensões de fio dental que o MySQL não possui

    Finalmente, o nome vem da filha de Monty, Maria (a outra é Minha), já que MySQL é agora uma marca registrada da Oracle Corporation.


1
Obrigado pela explicação muito abrangente. Exatamente o que eu estava procurando.
— precisa

5
MariaDB é explicitamente não SQL-99 completa, como negadas na própria página esta resposta links para. Por exemplo, ele não suporta afirmações e os CTEs ainda não foram lançados. A história é a mesma para o MySQL.
— Air

Acredito que os links para o montyprogram dot com apodreceram, mas não tenho idéia de onde os equivalentes para esses links podem ser encontrados online.
— Hay

MariaDB suporta InnoDB certo? por que está escrito assim?
— Paulson Peter

1
@PaulsonPeter Sim, o MariaDB suporta o InnoDB. Não sabe ao certo qual é a sua segunda pergunta.
— yannis

15

É uma bifurcação - dois projetos separados, começando na mesma base de código original, mas movendo-se em direções separadas. Isso aconteceu com bastante frequência nos projetos de código aberto em que a Oracle comprou as empresas patrocinadoras.

No meu entender, o MariaDB é mantido e aprimorado pelos desenvolvedores originais do MySQL, e o MySQL é mantido e aprimorado pela Oracle. Depende de quem você quer fazer esse trabalho.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.