Skip to content

PostgreSQL适配 #1293

@xiao0yy

Description

@xiao0yy

由于想基于现有的CockroachDB部署一套Apollo,但官方文档中提供的适配方案不是很“友好”,所以重新做了一次PostgreSQL的适配。

PostgreSQL适配

基于apollo v0.10.2对PostgreSQL做了适配,主要内容:

  • 提供了"pg风格"的建表SQL: scripts/sql/pg-configdb.sqlscripts/sql/pg-portaldb.sql
    • 统一使用小写+下划线命名
    • 字符串全部使用TEXT
    • 某些状态字段使用BOOLEAN
  • 对全部@Entity及部分Repository进行相应适配
    • 表名字段名映射
    • SEQUENCE映射
    • 部分实体字段int -> boolean
    • 部分HQL调整
    • 部分SQL调整
  • Mysql Driver替换为PostgreSQL Driver(版本:42.2.4)
  • 加入hibernate.dialecthibernate.temp.use_jdbc_metadata_defaults配置(使CockroachDB可用)
  • 去掉spring.datasource.initSQL=set names utf8mb4

使用PostgreSQL 9.5CockroachDB 2.0.3手动测试通.

未做工作项

  • 单元测试调整
  • Docker测试

因为代码更改不适合PR,所以在issue中做了说明。如有不合规范的地方,请关闭issue。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions