MYSQL架构不断被删除

时间:2017-10-10 19:13:40

标签: java mysql hibernate spring-boot database-schema

我有一个在Ubuntu服务器上使用docker运行的spring-boot应用程序,MYSQL DB在服务器上运行,而不是在docker镜像中运行。我用于spring-boot应用程序的模式会随机删除,我总是要使用备份转储来恢复它。我无法确定这个奇怪问题背后的原因。我试过谷歌搜索这个问题,我找不到任何关于这个问题。

什么可能导致数据库被丢弃?!?

它像一周一次随机!可能不止于此。我甚至无法追踪它。

我的application.yml有这个:

spring:
  datasource:
    url:  jdbc:mysql://localhost/schemaname?useSSL=false
    username: username
    password: password
    tomcat:
      validation-query: SELECT 1
      test-on-borrow: true

  jpa:
    show-sql: true
    hibernate:
      ddl-auto: update
    properties:
      hibernate:
        dialect: org.hibernate.dialect.MySQL5Dialect

1 个答案:

答案 0 :(得分:1)

您不应将ddl-auto用于生产应用。

来自Java Persistence with Hibernate

  

警告:我们已经看到Hibernate用户尝试使用SchemaUpdate   自动更新生产数据库的模式。这个可以   快速结束灾难,你的DBA不会允许。

此选项仅用于开发。

如果您不想手动运行SQL迁移,则应考虑使用flyway或liquibase等工具。