DataGear 部署数据库默认采用了内置的Derby数据库,存储在【用户主目录】/.datagear/derby 文件夹内。在DataGear启动时,会自动检查和安装内置Derby数据库,并且会根据当前DataGear版本号自动对其进行升级。内置Derby数据库能满足大部分的应用场景,并且简化了DataGear的安装部署,用户无需预先准备数据库环境,也不用在DataGear升级时手动检查和升级数据库。
如果希望变更数据库(比如MySQL、Oracle、PostgreSQL、SQL Server),则需要预先准备数据库环境,手动初始化和管理数据库结构,具体操作步骤如下所示:
1、手动初始化数据库
参考DataGear源码仓库(https://gitee.com/datagear/datagear)中内置的Derby数据库初始化SQL脚本(datagear-management/src/main/resources/org/datagear/management/ddl/datagear.sql),编写新数据库初始化SQL脚本,然后执行它们。
如果是初次安装DataGear,需要编写所有SQL脚本,如果是升级DataGear,则仅需要编写旧版本至新版本的升级SQL脚本。
提示:初始化脚本里的 DATAGEAR_REPLACEREGEX 函数及其相关的SQL语句都可以忽略,它们仅用作旧版本数据升级,没有在程序里使用。
2、手动更新数据库版本号表
手动执行如下SQL语句,更新当前DataGear版本号:
UPDATE DATAGEAR_VERSION SET VERSION_VALUE='当前版本号'
注意:上述SQL语句中的 当前版本号 应替换为实际DataGear版本号,比如:2.3.0
3、配置数据库连接
在config/application.properties添加datasource.driverClassName、datasource.url、datasource.username、datasource.password配置项,配置新数据库连接。
例如,对于MySQL数据库,配置内容如下所示:
datasource.driverClassName=com.mysql.cj.jdbc.Driver
datasource.url=jdbc:mysql://localhost:3306/datagear
datasource.username=datagear
datasource.password=datagear
4、引入数据库驱动程序
修改DataGear启动脚本,在其中引入新数据库JDBC驱动程序库。
对于Linux系统,应修改startup.sh启动脚本,例如,将:
JAVA_OPTS=$JAVA_OPTS
修改为
JAVA_OPTS=$JAVA_OPTS -Xbootclasspath/a:lib/mysql-connector-java-8.0.23.jar
对于Windows系统,应修改startup.bat启动脚本,例如,将:
java -jar datagear-2.3.0.jar
修改为
java -Xbootclasspath/a:lib/mysql-connector-java-8.0.23.jar -jar datagear-2.3.0.jar
5、启动
执行启动脚本,启动DataGear。
注意:变更数据库需要DataGear-2.3.0及以上版本,旧版本程序存在数据库兼容问题。
源码地址:
Gitee:https://gitee.com/datagear/datagear