1
resposta

Qual o valor adequado para spring.jpa.hibernate.ddl-auto em produção

Olá!

Dado que estou com o projeto em produção, qual seria o valor mais adequado para a propriedade spring.jpa.hibernate.ddl-auto do application.properties?

1 resposta

O ideal é você utilizar migrations ao invés de deixar que o hibernate tome conta da manipulação do seu banco, pois, isso pode gerar diversos problemas em projetos grandes. Pode causar comportamentos indesejados e afetar a integridade do BD, Aqui algumas razões para isso:

Risco de perda de dados: Algumas configurações, como create ou create-drop, podem recriar as tabelas sempre que o aplicativo é iniciado, o que leva à perda de dados.

Controle inadequado das migrações: O Hibernate não oferece controle detalhado sobre as alterações no esquema de banco de dados em comparação a ferramentas de migração de banco como o Flyway. Usar ddl-auto pode gerar mudanças não planejadas na estrutura das tabelas, o que pode comprometer a aplicação.

Desempenho: Em produção, é importante otimizar as operações de criação e atualização de tabelas. O ddl-auto pode adicionar uma sobrecarga ao verificar constantemente se há necessidade de atualizações no esquema, o que pode prejudicar o desempenho.