DEV Community

Paulo Alves
Paulo Alves

Posted on

Versionamento de Banco de Dados com Liquibase

O Liquibase é uma ferramenta open-source que permite rastrear e controlar as alterações no esquema do seu banco de dados. Ele funciona como um sistema de controle de versão para seu banco de dados.

Benefícios do Versionamento de Banco de Dados

  • Rastreabilidade: Permite acompanhar todas as alterações feitas no banco de dados, facilitando a identificação de problemas e a reversibilidade de mudanças.

  • Facilidade de migração: Simplifica a migração de alterações para diferentes ambientes, como desenvolvimento, teste e produção.

  • Colaboração entre times: Permite que diferentes desenvolvedores trabalhem no mesmo banco de dados sem conflitos.

  • Segurança e confiabilidade: Reduz o risco de erros e garante a consistência do banco de dados.

Para começar a usar o Liquibase, você precisa:

  1. Instalar o Liquibase: Acesse o site oficial https://www.liquibase.com/community e baixe a versão mais recente para o seu sistema operacional.

  2. Criar um changelog: O changelog é um arquivo que armazena o histórico de todas as alterações feitas no banco de dados. Você pode criar o changelog manualmente ou usar a ferramenta de linha de comando do Liquibase.

  3. Executar as mudanças: O Liquibase pode aplicar as mudanças no banco de dados de diversas maneiras, como através da linha de comando, scripts SQL ou ferramentas de integração contínua.

Bora praticar

Vamos criar uma tabela simples de usuários usando o Liquibase:

  1. Crie um arquivo XML chamado "changelog.xml" na pasta do seu projeto e adicione o seguinte código ao arquivo:
<databaseChangeLog
  xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-4.3.xsd">

  <changeSet author="TESTE01" id="1">
    <createTable tableName="usuarios">
      <column name="id" type="integer" autoIncrement="true" primaryKey="true"/>
      <column name="nome" type="varchar(255)"/>
      <column name="email" type="varchar(255)"/>
    </createTable>
  </changeSet>

</databaseChangeLog>
Enter fullscreen mode Exit fullscreen mode
  1. Executar a mudança:
liquibase update
Enter fullscreen mode Exit fullscreen mode

O Liquibase irá criar a tabela "usuarios" no banco de dados.

  1. Alterar a tabela:

Vamos adicionar uma nova coluna à tabela "usuarios":

<changeSet author="TESTE01" id="2">
  <addColumn tableName="usuarios">
    <column name="data_nascimento" type="date"/>
  </addColumn>
</changeSet>
Enter fullscreen mode Exit fullscreen mode
  1. Executar a mudança:
liquibase update
Enter fullscreen mode Exit fullscreen mode

O Liquibase irá adicionar a coluna "data_nascimento" à tabela "usuarios".

O Liquibase é uma ferramenta muito interessante quando se trata de versionamento de banco de dados. A ideia deste guia prático é oferecer uma visão inicial de seu funcionamento e possibilitando a manutenção consistente dos bancos de dados em diversos ambientes. Essa abordagem garante a uniformidade estrutural dos bancos de dados, tanto no ambiente de Desenvolvimento quanto no de Homologação, alinhando-os ao ambiente de Produção. Todo este processo, aliado à pipeline, torna a interação entre times ainda mais rápida.

Recursos Adicionais

Top comments (0)