Banco de Dados

3 ago, 2018

Administre seus bancos de dados com o DBeaver

Publicidade

Recentemente dei uma dica bacana aqui no iMasters sobre como manipular o seu banco de dados diretamente do VS Code (veja este artigo aqui). Entretanto, lá deixei bem claro que essa estratégia é interessante para quando estamos trabalhando com ambientes de desenvolvimento. Afinal, quando estamos desenvolvendo, é natural que os dados fiquem “sujos”, pois estamos sempre testando coisas neles.

Mas e quando precisamos acessar ambientes de produção/homologação? Apesar de ser possível fazer isso no VS Code, não recomendo por alguns motivos simples. Primeiro, que lá o ambiente de desenvolvimento estará mesclado com o ambiente de produção, o que torna muito fácil cometer erros e fazer testes onde não devia.

Outro bom motivo é que o VS Code não te dá segurança através do bloqueio do auto-commit. Em outras palavras, se executarmos uma query equivocada, não há como bloquear ela de ser commitada para o banco e finalizar a transação.

É por este motivo que neste artigo quero mostrar como funciona o DBeaver, um projeto open source bem poderoso que nos dá várias possibilidades na hora de manipular dados nos bancos.

Conhecendo o Castor

O DBeaver se classifica como o que ele chama de Free Universal Database Tool, ou seja, uma ferramenta universal para banco de dados. Isso significa que ele nos dá a possibilidade de manipular vários SGBDs, como Oracle, Postgres, MySQL, e por aí em diante (a lista de todos os bancos de dados suportados está aqui).

Como havia comentado, o projeto é open source e está armazenado lá no GitHub, onde é oferecido por meio da licença MIT e já possui mais de 5.700 estrelas. O projeto é oferecido em duas versões: Community (gratuito) e EE (pago). A segunda versão suporta banco de dados que não possuem um driver JDBC, como o MongoDB, Cassandra e Redis (os valores deste plano começam a partir de US$ 75/ ano).

O projeto está disponível para os sistemas Linux, Mac e Windows. Sua instalação é bem simples e vai de acordo com a plataforma que você estiver usando. Para obter a ferramenta, basta acessar esse endereço (até o momento em que este artigo foi escrito, a versão atual é a 5.1).

Página de download do DBeaver

Vamos dar uma olhada em algumas de suas funcionalidades mais interessantes (focando na versão Community que é gratuita).

As mil e uma funções do Castor

O DBeaver é uma ferramenta baseada no bom e velho Eclipse (IDE de desenvolvimento Java), o que significa que se você não gosta do Eclipse, as chances de gostar do DBeaver já diminuem logo de cara. Mas não desista ainda, dê uma chance às funcionalidades, que é onde ela realmente brilha.

Gerenciador de Conexões

Quando eu trabalhava em uma empresa Healthcare, tinha que me conectar constantemente a diversas bases diferentes de clientes. Isso costumava ser problemático, mas felizmente a ferramenta tem um bom gerenciador interno. Além de guardar os dados das suas conexões, ele nos permite dividi-los em grupos/categorias e em ambientes (dev, prod, homolog). Além disso, ele também trata de conexões que envolvem túneis SSH, algo comum quando estamos tratando de ambientes controlados.

Apesar de ser baseado no Eclipse, o tema dark dele funciona muito bem! Eu te disse pra não desistir da ferramenta.

Visualizador de dados e editor

De nada serviria a ferramenta se não pudéssemos acessar, consultar e alterar os dados das bases. O DBeaver tem um visualizador simples, mas que nos permite uma série de pequenas coisas úteis, como ordenar os dados direto da tabela, filtrar elementos e exportá-los em pdf, texto, csv e excel. Fora isso, ele também consegue gerar queries SQL de acordo com os dados que você selecionou da tabela. Isso é extremamente útil.

Editor possui várias funcionalidades, como o autocomplete, por exemplo.

Metadados

Tão importante quanto os próprios dados, são os metadados, ou seja, os dados sobre os dados. Aqui, estou me referindo a dados sobre as tabelas, views, colunas, indexes, procedures, triggers, entidades de armazenamento (como tablespaces e partições) e entidades de segurança, como usuários e roles. Na ferramenta, conseguimos visualizar essas informações de forma muito simples, o que ajuda muito na hora de entender quais são as chaves de uma tabela, quais suas restrições, etc.

A visualização dos dados fica muito fácil no DBeaver

Diagramas

Existem pessoas – como eu – que conseguem absorver melhor as informações quando elas estão representadas através de desenhos e diagramas, ao invés de somente texto. No DBeaver temos a possibilidade de gerar diagramas automaticamente e depois exportá-los em GIF, PNG, BMP e GraphML.

Gráfico gerado pela ferramenta.

Conclusão

Das várias ferramentas que já experimentei na minha breve jornada como desenvolvedor, o DBeaver foram uma das poucas que continuam me acompanhando. Suas funcionalidades na edição Community são o suficiente para que eu consiga trabalhar sem dores de cabeça. O editor, visualizador e administrador de dados são bem úteis e não travam, pelo contrário, costumam facilitar bastante o workflow. Se você procurar por uma ferramenta do tipo, não deixaria de experimentar esta.