Validação contínua do backup do MySQL: restaurando backups

Os bancos de dados MySQL do Facebook estão espalhados pelos nossos data centers globais e precisamos ser capazes de nos recuperar de uma interrupção em qualquer um desses locais, em qualquer momento. Em tal evento de desastre, não só temos que recuperar o serviço o mais rápido e confiável possível, mas também precisamos garantir que não percamos dados no processo. Para esse efeito, criamos um sistema que verifica continuamente a capacidade de restaurar os nossos bancos de dados a partir de backups.

Nosso sistema de restauração consiste em dois componentes principais:

  • Continuous Restore Tier (CRT) – Responsável por todo agendamento e monitoramento em torno de restaurações. Ele procura bancos de dados com novos backups e cria tarefas de restauração para eles, monitora o progresso da restauração e garante que cada backup seja restaurado com êxito.
  • ORC …
[Leia mais]
Guia da Certificação MySQL

Tudo sobre as certificações do SGBD open source mais popular do mundo!

Provas necessárias para cada certificação, conteúdo de cada prova, valores, número de questões, tempo disponível de realização da prova, e muitas outras informações.

Migrando Legados para MySQL 5.7 com Query Rewrite Plugin - Parte 2


No post anterior, vimos o que são os Query Rewrite Plugins, tanto preparse, quanto postparse. Agora é o momento de ver como este recurso pode viabilizar a migração de uma aplicação legada real. Para exemplificar, usaremos uma versão antiga do Moodle que é incompatível com MySQL 5.7. Veremos como implementar um preparse QR plugin.
O legado: Moodle 2.3Moodle é uma plataforma de aprendizado extremamente popular criada com o LAMP Stack. A versão 2.3 já é bastante antiga e não recebe mais atualizações desde janeiro de 2014.
Ao tentar instalar o Moodle 2.3 com MySQL 5.7, ocorre o erro:

[Leia mais]
Migrando Legados para MySQL 5.7 com Query Rewrite Plugin - Parte 1

Uma funcionalidade que pode fazer a diferença e viabilizar projetos de migração de legado para MySQL é a Query Rewrite Plugin. Com ela é possível interceptar comandos que são enviados ao MySQL e modificá-los online, sem a necessidade de alterar a aplicação.
Neste post, vamos entender como utilizar este recurso, com um exemplo real usando Moodle 2.3 no MySQL 5.7.

O que é o Query Rewrite PluginA partir do MySQL 5.7.6 há suporte para os Rewrite Plugins, que podem examinar e seletivamente reescrever comandos recebidos pelo servidor antes que sejam executados.
Quando uma instrução é recebido pelo MySQL Server, por exemplo um SELECT * FROM tabela where id = 1, ele passa por um parser que vai validar sintaxe e semântica, entre outros passos. Depois disso, o Otimizador de Consultas entra em ação, gerando e selecionando o melhor plano de execução para a query. Finalmente, o melhor …

[Leia mais]
MySQL InnoDB Cluster, now with remote nodes!

In this post I’m going to extend the tests I made with MySQL InnoDB Cluster on the previous post, creating a group of instances with separate servers, that is, I’m going to test how to create a new cluster with three different machines considering that, if you create a cluster using one giant server, maybe […]

Amazon RDS para SQL Server – Suporte para Backup/Restauração Nativos para Amazon S3

Os leitores regulares dos meus artigos sabem que eu sou um grande fã do Amazon Relational Database Service (RDS). Como um serviço de banco de dados gerenciado, ele cuida dos aspectos mais rotineiros de configuração, operação e a escalabilidade de um banco de dados relacional.

Nós lançamos suporte para SQL Server em 2012. Continuando o nosso esforço para adicionar recursos que incluíram o suporte para SSL, as principais atualizações de versão, …

[Leia mais]
Novo MySQL 8.0 lançado!

Todos os anos novos produtos são lançados. Na área de TI não é diferente. Já vi muita coisa boa ser lançada, reeditada, copiada… Mas, também já vi muito lixo tecnológico e “emblomation” de marketing. Nestes 34 anos de TI, já […] ↓ Leia o restante deste post...

MySQL 8.0 – SET PERSIST

Fala galera. MySQL 8 DMR foi disponibilizado hohe e ele traz algumas novas funcionalidades bem legais. Uma delas é a habilidade de persistir variáveis/configurações entre restart’s. Essa opção é bastante interessante se trocamos variáveis dinâmicas. Isso nos poupa de ter que editar o arquivo .cnf toda a vez que executamos um SET no MySQL(Ou mesmo quando não temos acesso aos arquivos no disco).
A nova sintaxe para o comando é a seguinte:

SET PERSIST option=value;
SET @@persist.option=value;

O MySQL vai criar um arquivo chamado mysqld-auto.cnf. Este arquivo estará localizado na pasta do datadir. Este arquivo irá conter todas as variáveis que foram setadas com o PERSIST e este arquivo será carregado depois de todos os outos (my.cnf / –defaults-file / ~/.my.cnf / …). Isto quer dizer que as variáveis configuradas neste arquivo vão prevalecer perante as demais.

Estas configurações podem ser …

[Leia mais]
MySQL 8.0 – SET PERSIST

Fala galera. MySQL 8 DMR foi disponibilizado hohe e ele traz algumas novas funcionalidades bem legais. Uma delas é a habilidade de persistir variáveis/configurações entre restart’s. Essa opção é bastante interessante se trocamos variáveis dinâmicas. Isso nos poupa de ter que editar o arquivo .cnf toda a vez que executamos um SET no MySQL(Ou mesmo quando não temos acesso aos arquivos no disco).
A nova sintaxe para o comando é a seguinte:

SET PERSIST option=value;
SET @@persist.option=value;

O MySQL vai criar um arquivo chamado mysqld-auto.cnf. Este arquivo estará localizado na pasta do datadir. Este arquivo irá conter todas as variáveis que foram setadas com o PERSIST e este arquivo será carregado depois de todos os outos (my.cnf / –defaults-file / ~/.my.cnf / …). Isto quer dizer que as variáveis configuradas neste arquivo vão prevalecer perante as demais.

Estas configurações podem ser …

[Leia mais]
MySQL 8.0 DMR, new features, part 1

I would like to start this telling the reader that this is going to be the first of some blog posts I’m planning to exploit subjects around MySQL 8.0, as I have been testing its features. As I’m an Oracle ACE Director, part of the Oracle ACEs program, I received from my friend Fred Deschamps, […]