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

Microsoft SQL Server: Detectando Índices Fragmentados – Melhorando a Performance

Assim como o disco, fisicamente, torna-se fragmentado; também acontece com toda organização lógica que venha fazer uso desta mídia. Tablespaces, tabelas, e, índices. Todos se fragmentam. Faz parte do negócio. É regra do jogo, se quiser brincar, aceite-as. A fragmentação (não importa o objeto de banco de dados em questão) acontecerá mais, ou menos, dependendo do tipo de operação do banco de dados.

Bancos de dados transacionais (OLTP) tendem a se fragmentar muito muito mais do bancos de dados de consulta massiva (OLAP/DW). Pelo menos, se sustentados da maneira correta.

Quanto mais escrita, maiores as probabilidades de fragmentação. A modelagem podem afetar, também, a fragmentação.

Claro que, tudo que está fragmentado está bagunçado. E, tudo que está bagunçado não vai bem. No caso de banco de dados, isto significa uma redução de performance.

O efeito colateral mais esperado da desfragmentação é o aumento de performance, ou, se preferir: recuperação da performance perdida. Neste artigo, trataremos, puramente, da fragmentação de índices.

Mas, para os loucos por um código pronto, vamos ao que interessa: Fragmentação de Índices no Microsoft SQL Server. Lidar com fragmentação, envolve duas etapas básicas: identificação e ação.

Continue lendo Microsoft SQL Server: Detectando Índices Fragmentados – Melhorando a Performance