本章节为使用者介绍统一SQL支持的数据库版本及版本校验功能。
1.4.8. 源库版本
源数据库 |
默认版本 |
支持版本 |
|---|---|---|
MySQL |
8.0(80000) |
5.7(50700), 8.0(80000) |
Oracle |
19c(1900) |
11g(1100), 19c(1900) |
1.4.9. 目标库版本
数据库 |
默认版本(配置版本号) |
支持版本(配置版本号) |
|---|---|---|
PostgreSQL |
13.5(130500) |
13.5(130500), 14.3(140300) |
达梦 DM |
8.0(80000) |
8.0(80000) |
OceanBase Oracle 模式 |
3.2.3.3(3020303) |
3.2.3.3(3020303), 4.2.1.0(4020100) |
OceanBase MySQL 模式 |
4.2.1.0(4020100) |
4.2.1.0(4020100) |
GaussDB Oracle 模式 |
505.0.0(5050000) |
505.0.0(5050000), 505.2.0(5050200), 505.2.1(5050201) |
GaussDB500 Oracle 模式 |
500.0.0(5000000) |
500.0.0(5000000) |
GaussDB MySQL M 模式 |
505.2.0(5050200) |
505.2.0(5050200) |
GaussDB MySQL B 模式 |
505.2.0(5050200) |
505.2.0(5050200) |
GaussDB PG 模式 |
505.2.0(5050200) |
505.2.0(5050200) |
openGauss MySQL 模式 |
6.0.2(6000200) |
6.0.2(6000200) |
openGauss Oracle 模式 |
6.0.2(6000200) |
6.0.2(6000200) |
TDSQL PG 模式 |
5.6.3.6(5060306) |
5.6.3.6(5060306) |
TDSQL Oracle 模式 |
5.6.3.6(5060306) |
5.6.3.6(5060306) |
TDSQL MySQL 模式 |
22.1.4(22010400) |
22.1.4(22010400), 22.6.0(22060000) |
GoldenDB Oracle 模式 |
6.1.3.0(6010300) |
6.1.3.0(6010300) |
GoldenDB MySQL 模式 |
6.1.3.10(6010310) |
6.1.3.10(6010310) |
SQLite |
3.42.0(34200) |
3.42.0(34200) |
LightDB MySQL 模式 |
22.3.0.0(22030000) |
22.3.0.0(22030000) |
LightDB Oracle 模式 |
22.2.0.0(22020000) |
22.2.0.0(22020000) |
ltmemdb |
25.1.0.0(25010000) |
25.1.0.0(25010000) |
SQL Server |
17 |
17 |
InfluxDB1 |
1.8.0(10800) |
1.8.0(10800) |
InfluxDB3 |
3.5.0(30500) |
3.5.0(30500) |
ClickHouse |
21.4.5.26(21040526) |
21.4.5.26(21040526) |
1.4.10. 版本校验
在调用接口进行转换时,会校验数据库的版本号:
默认配置为0,会使用默认的版本号
不为0,会校验当前数据库是否支持这个版本,范围如上
涉及unisql.target.database.version 和 unisql.source.database.version参数,具体请参考 unisql.conf文件说明
源库和目标库相同时不校验版本
警告
对于unisql.target.database.version,之前版本默认设置为5050200,为了兼容,如果目标库不是gaussdb_oracle 但是设置为5050200版本, 内部会设置为0,取目标库默认值。
对于unisql.source.database.version,之前版本默认设置为12(未使用),为了兼容,若版本为12版本,内部会设置为0,使用源库默认版本。
当前若修改了unisql.target.database.version(通过参数传入,调用接口修改或修改配置文件),然后切换转换的目标库(比如多发多个库),会导致版本校验失败(因为设置的版本为上一个库的版本)。