Arquivo da categoria: Teoria de Banco de Dados

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 e o GDPR

O que é o GDPR?

Global Data Protection Regulation ou Regulamento Geral sobre Proteção de Dados é uma regulamentação, criado pela União Européia, mas, com abrangência global. Antes de ser uma regulamentação, é acima de tudo, um belo conjunto de boas práticas que deveria ser adotado por toda empresa que, de alguma forma, coleta e manipula dados de pessoas (físicas e/ou jurídicas) e estão interessadas em manter sua imagem institucional, além, obviamente, de mitigar prejuízos financeiros.

A GDPR não é uma regulamentação nem modismo de última hora. Ele começou a ser rascunhado em 2010, e, começou a ganhar corpo e forma por volta de 2012. Aprovado em 2016, quando foi definido sua data de entrada em vigor a partir de 25/06/2018, portanto, existiu um prazo extenso de quase 2 (dois) anos para que as empresas se adequassem à ele.

Continue lendo MySQL e o GDPR

MySQL 5.7 – TableSpace Genéricas v2.0 – A nova Onda

O conceito de tablespace não tem nada de novo. Só não é mais velho que eu. Vários outros RDBMS (bancos de dados) o implementam faz algum tempo. No MySQL foi implementado pelos primórdios do innoDB.

Em linhas gerais o que é uma tablespace?
Tem algumas palavras em inglês que não fazem o menor sentido traduzidas, ou, em traduzi-las. Concorda comigo? Para mim, tablespace é uma dessas palavras. Vamos lá: “espaço de tabelas”. Tablespace é uma área, física e/ou lógica, na qual se aglomeram uma ou mais tabelas. É como se fosse uma área reservada para uma, ou, um grupo de tabelas. Seja com o objetivo de organização (tabelas com mesmo fim, aplicação, etc), volumetria, performance, segurança, etc.

O MySQL e sua épica jornada com tablespaces
No princípio de tudo, e até a chegada da versão 5.1, todas as tabelas com storage engine innoDB eram, compulsoriamente, criadas dentro de uma tablespace única, também chamada de compartilhada (shared tablespace). Fisicamente, consistia de um arquivo com síndrome de Buzz (pois, crescia ao infinito e além), de nome ibdata, que, ficava logo abaixo da raiz do DATADIR (diretório de dados, definido pela variável datadir, e, onde reside o schema do MySQL). Esta implementação me rendeu muitas horas de sono, pois, era uma verdadeira armadilha. Por ser um único arquivo contendo várias tabelas, apresentava contenções de S/O, era de difícil sustentação e manutenção.

Continue lendo MySQL 5.7 – TableSpace Genéricas v2.0 – A nova Onda