如何使用hibernate在mysql集群中创建表

ngynwnxp  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(297)

我使用的是hibernate with spring boot,表是在给定的数据库中创建的,而不是在另一个数据库中创建的,比如10.10.1.350是management node,10.10.1.348和10.10.1.349是child db。当我们在348中直接使用查询创建表时,然后在349中自动创建表。但是我们使用的是348中创建的hibernate-then表,而不是349中的auto-create。
属性like:-

spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://10.10.1.348:3306/test
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=abc@1234
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect

pojo类-

@Entity
@Table(name = "test")
@Getter
@Setter
public class Test {

    @Id
    @Column(name = "tst_id")
    private Long tstId;
    @Column(name = "tst_nm")
    private String tstNm;

}

mysql依赖的pom.xml-

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>

        </dependency>
up9lanfz

up9lanfz1#

hibernate docs说:
尽管hibernate提供了 update 的选项 hibernate.hbm2ddl.auto 配置属性,此功能不适用于生产环境。
只需使用flyway或liquibase进行数据库迁移。Spring Boot集成了两者。

相关问题