Todos os posts de Alexandre Almeida

Apple – Problema de chuvisco no monitor (displayport/thunderbolt)

Recentemente, comprei um Apple MacMini (late 2014), que é a última versão. Por força de necessidade, sou obrigado a usar 2 monitores. Tenho 2 (dois) monitores Philips Brilliance 239C. O maior problema, como ilustra a imagem a seguir, é que o MacMini só tem uma porta HDMI, e, nenhuma porta VGA (Velho Golpe do Adaptador). Solução de gênio: comprar um adaptador MiniDisplay Port (Thunderbolt) para HDMI… Este problema, pode afetar também usuários de MacBook Pro e MacBook Air.

Continue lendo Apple – Problema de chuvisco no monitor (displayport/thunderbolt)

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