Arquivo da categoria: MySQL 8.0

O que são literais no MySQL?

Se buscarmos no dicionário: literais são significados. Descrição de algo, na forma de texto. No MySQL, Oracle, SQL Server, ou qualquer outro banco de dados, uma literal é o conteúdo de uma variável, ou, simplesmente, um valor oferecido para uma comparação.

SET var_Nome = ‘ALEXANDRE’

No exemplo acima estamos atribuído a literal ALEXANDRE à variável var_Nome. Podemos dizer que o conteúdo (ou significado) de var_Nome é ALEXANDRE.

Ah! Entendi!!! Tudo que está entre aspas é uma literal. Não tão rápido. A analogia é boa, mas, imperfeita.

SET var_Eu_Remexo_Muito = FALSE;

SET @var_Preco = 10;

SET @Qtde = 3;

SET @Total = @var_Preco * @Qtde;

FALSE (0) é uma literal que foi atribuída à var_Eu_Remexo_Muito . Apesar de meus filhos adorarem Madagascar, e, eu ser simpatico ao Rei Julian, eu não gosto de dançar. Logo, FALSE ( 0 no MySQL) descreve o conteúdo da variável à qual foi atribuída.

Continue lendo O que são literais no MySQL?

MySQL na Amazon AWS: RDS ou EC2?

Caras, estamos há dois dias da estréia do Star Wars no cinema. Nível de ansiedade nas alturas 🙂

Mas, voces não vieram aqui para falar de Star Wars. Então, vamos ao que interessa, e, deixemos que lado negro da força para iluminar sua mente.

Sopa de letrinhas: AWS é Amazon Web Services. Aliás, acho que “web”nem caberia mais, visto que os serviços da Amazon alcançou patamares muito mais elevados. RDS é a sigla para Relational Database Services, e, EC2 Elastic Compute Cloud.

Se voce jogar tudo isso é um liquidificador Kaminoano, teremos então um serviço de cloud, ideal para hospedagem de servidores de banco de dados.

A pergunta que sempre me fazem é: Devo hospedar meu banco de dados MySQL em RDS ou EC2?

Minha resposta padrão sempre prevalece: “Depende, pequeno Padawan”.

Vamos entender, em linhas gerais, quem é quem:

RDS: Uma instância RDS é uma abstração de um servidor de banco de dados. Além de não a figura do hardware, não tem sistema operacional, e, nem a instalação do banco de dados. Pode ser entendido, de maneira crua, como um banco de dados virtualizado. É  um banco de dados fornecido como serviço (DBaaS). Atualmente, os seguintes bancos podem ser contratados como RDS: MySQL, MariaDB, Aurora, Oracle, SQL Server, e, PostgreSQL.

EC2: O EC2 é mais do mesmo, é a boa e velha VM (máquina virtual) que vc virtualiza o hardware, instala e configura o sistema operacional de sua preferência, o sistema de arquivos, e, então o banco de dados. Tudo podendo ser configurado sob medida e gosto. Qualquer banco de dados pode ser instalado num ambiente EC2.

Há muitos bons artigos sobre RDS e EC2, e já adianto que há defensores, fervorosos, dos dois lados. A melhor pessoa para te dizer qual o melhor caminho a seguir: RDS ou EC2, é voce mesmo. Portanto, vai um guia básico de perguntas que voce mesmo deve se fazer para tomar a melhor decisão. Continue lendo MySQL na Amazon AWS: RDS ou EC2?

MySQL Router – Alta Disponibilidade?

O MySQL Router deveria ser um balanceador de carga e gerenciador de alta disponibilidade para o MySQL. Não deixa de ser. O que me incomoda é sua baixa resiliência, e, minguada capacidade para para administrar números substanciais de conexões.

O MySQL Router é filho órfão do naufragado e péssimo projeto: MySQL Proxy. Um mal ajambrado e ruim projeto, destemperado e sem nexo que inclusive rodava scripts em LUA. Nunca teve apoio, e, cheio de bugs. Tanto que jamais deixou de ser classificado como “Alpha Release”. Com um breve banho de loja, virou, MySQL Router. Continue lendo MySQL Router – Alta Disponibilidade?