切换数据库
ContiNew Admin 默认使用 MySQL 数据库,但从 v2.5.0 版本开始,我们也在逐步扩展适配更多的数据库系统,目前已初步扩展适配 PostgreSQL 数据库。
如果你有需要,只需要几步简单的调整即可完成数据库的切换,下方将以切换为 PostgreSQL 数据库环境为例进行演示。
1.首先,引入所需的数据库驱动。(根据实际需要移除 MySQL 数据库驱动)
xml
<!-- PostgreSQL Java 驱动 -->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
2.修改 application-dev.yml
中的数据源配置。(根据实际需要在部署前修改其他环境的数据源配置,例如:application-prod.yml
)
yaml
--- ### 数据源配置
spring.datasource:
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:p6spy:postgresql://${DB_HOST:127.0.0.1}:${DB_PORT:5432}/${DB_NAME:continew_admin}?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&rewriteBatchedStatements=true&autoReconnect=true&maxReconnects=10&failOverReadOnly=false
username: ${DB_USER:root}
password: ${DB_PWD:123456}
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
3.修改 application.yml
中的 MyBatis Plus 配置。
yaml
--- ### MyBatis Plus 配置
mybatis-plus:
## 扩展配置
extension:
enabled: true
# Mapper 接口扫描包配置
mapper-package: ${project.base-package}.**.mapper
# ID 生成器配置
id-generator:
type: COSID
# 数据权限配置
data-permission:
enabled: true
# 分页插件配置
pagination:
enabled: true
db-type: POSTGRE_SQL
4.修改 db.changelog-master.yaml
文件,指定初始脚本。
yaml
databaseChangeLog:
- include:
file: db/changelog/postgresql/main_table.sql
- include:
file: db/changelog/postgresql/main_column.sql
- include:
file: db/changelog/postgresql/main_data.sql
- include:
file: db/changelog/postgresql/plugin/plugin_schedule.sql
- include:
file: db/changelog/postgresql/plugin/plugin_open.sql
- include:
file: db/changelog/postgresql/plugin/plugin_generator.sql
操作完上方步骤后即完成了数据库的切换。
温馨提示
如果在切换数据库前,你已经基于 ContiNew Admin 项目开发了部分业务代码,请自行检查相关的 SQL 代码是否使用了当前数据库的特有函数特性,并及时调整以免切换数据库后报错。