使用Jhipster(Spring)和Liquibase,如果不存在我希望liquibase创建我的数据库,我希望它是UTF-8。
以下是我的“application-dev.yml”配置文件的示例。
datasource:
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://127.0.0.1:3306/scalink?useUnicode=true&characterEncoding=utf8&useSSL=false&createDatabaseIfNotExist=true
name:
username: root
password:
hikari:
data-source-properties:
cachePrepStmts: true
prepStmtCacheSize: 250
prepStmtCacheSqlLimit: 2048
useServerPrepStmts: true
我现在的问题是:我哪里错了?
感谢所有人。
亚历
答案 0 :(得分:2)
根据这个Liquibase CORE-50,数据库的创建不是Liquibase的任务。尝试使用参数 createDatabaseIfNotExist = true 在数据源URL上创建数据库只是JDBC驱动程序提供的选项。不幸的是,以这种方式创建数据库的选项有限。 documentation也没有提供更多信息。如果您仍想按照提到的方式创建数据库,可以通过JDBC URL创建数据库,然后在 config / liquibase / changelog / 00000000000000_initial_schema.xml 中添加changeSet。正在将架构更改为utf8
<changeSet id="0" author="jhipster">
<sql>ALTER SCHEMA `jhipstersampleapplication` DEFAULT CHARACTER SET utf8;
</sql>
</changeSet>