MySQL – Criação de Tablespace

No começo, antes da versão 5.1, quando ainda não tínhamos o “innodb-file-per-table” todas as tabelas eram criadas, e, armazenadas dentro de uma única tablespace, chamada de  “shared tablespace”, em português “área compartilhada de tabelas”, ou ainda, em “brasileiro”: casa da mãe Joana. Os famosos arquivos IBDATAx. Uma baderna. Dados, índices, metadados, transações, catálogos… Enfim, tudo referente às tabelas innodb ficam em um mesmo arquivão no S/O.

Pró: Contiguidade. Alocava-se um grande espaço justaposto no disco evitando-se fragmentação física. Contras: Performance, manutenção, etc. No frigir dos ovos, era muito ruim.

Com o nascimento do 5.1 e seu novo parâmetro maroto “innodb-file-per-table”, que como diz a tradução ao pé da letra: dançou mané – agora é uma área (tablespace/arquivo) para cada tabela. Resolveu sim os problemas de manutenção. Em alguns casos, até de performance, em virtude da melhor alocação dos dados no Buffer Pool (buffer cache). Mas, também, chegou com muitos outros problemas: aumentou muito o número de arquivos no S/O, e, com isso a necessidade de “ponteiros”, com isso, tivemos que rever as configurações de memória.

Continue lendo MySQL – Criação de Tablespace

MySQL 5.7 – Explain de Sessão

Como sempre digo… uma conexão em um banco de dados pode ser chamada de thread, sessão, conexão, etc. Cada um dá o nome que quiser à conexão feita em seu banco de dados. Nunca, jamais, discuta com o DBA!

Cenário: Uma query está rodando no MySQL. Roubando sua paciência, além de recursos de I/O, memória, CPU, etc. Antes de dar um Kill básico, voce gostaria (mas, muito) de saber que diabos esta query está fazendo.

DBA que é DBA usa a tela preta. No terminal, vc teria que dar um show full processlist, rezar para que o conteúdo da query caiba no tamanho limite, recortar a query e colar após um comando explain.

Continue lendo MySQL 5.7 – Explain de Sessão

Criando Usuário no IBM DB2

 

Usuários! É impossível escutar este nome e não associar com TRON. Adoro quando escuto algum programa gritando “Usuário!!!!”. Como se usuário fosse uma coisa infernal. E, é. Há aqueles que associam com drogas. De qualquer forma, usuário nunca é coisa boa 🙂

Quando pensamos em DB2, a primeira coisa que é preciso ter em mente é que: o DB2 não tem CREATE USER. O DB2 não tem CREATE LOGIN. Esquece.  Voce não vai conseguir criar usuário no DB2. Sai dessa!

O DB2 utiliza o usuário do próprio sistema operacional como credencial. Portanto, para ter acesso aos dados e objetos do DB2, o primeiro passo é a criação de um usuário no sistema operacional. Aqui, vou usar um LINUX CentOS. Lembrando que é preciso ter privilégio de root no sistema operacional para que esta tarefa possa ser concluída com êxito.

Continue lendo Criando Usuário no IBM DB2