MySQL(BigQuery、ADB for MySQL、SQL-Server)配置
设置MySQL配置参数可在迁移MySQL、BigQuery、ADB for MySQL、SQL-Server数据库脚本时自定义迁移工具的行为。
打开config文件夹中的features-mysql.properties文件,并根据实际需要设置features-mysql.properties文件中的配置参数中的参数。
参数 | 说明 | 取值范围 | 默认值 | 样例 |
|---|---|---|---|---|
| 是否使用数据库名称作为schema名称,如果数据库名称不存在,则使用用户定义schema, 如果用户定义schema为空,则使用默认schema。 |
|
|
|
| 用户设置的schema名称,如果该参数不为空,则使用该参数,即使包含useDatabaseAsSchema =true,也会使用当前schema名称。 |
|
|
|
| 默认数据存储方式,ROW:行存储,COLUMN:列存储。 |
|
|
|
| 默认的表类型,分区表、复制表、round-robin表。 REPLICATION、HASH、ROUND-ROBIN。 |
|
|
|
| 表空间选项。 |
|
|
|
| 分区键选择策略。 |
|
|
|
| 分区键设置,如果为空,则按照默认策略选择,如果有多列,用逗号分隔,忽略列名称大小写。 |
|
|
|
| 创建新表时,需要在CREATE TABLE语句中指定关键字COMPRESS,这样,当对该表进行批量插入时就会触发压缩特性。该特性会在页范围内扫描所有元组数据,生成字典、压缩元组数据并进行存储。指定关键字NOCOMPRESS则不对表进行压缩。 |
|
|
|
指定表数据的压缩级别,它决定了表数据的压缩比以及压缩时间。 | ||||
| 指定表数据同一压缩级别下的不同压缩水平,它决定了同一压缩级别下表数据的压缩比以及压缩时间。对同一压缩级别进行了更加详细的划分,为用户选择压缩比和压缩时间提供了更多的空间。总体来讲,此值越大,表示同一压缩级别下压缩比越大,压缩时间越长;反之亦然。 |
|
|
|
| 数据库模板。 |
|
| table.database.template=template0 |
| A database code. |
|
| table.database.encoding=UTF8 |
| 创建索引时,是否重新命名索引名。 |
|
| table.index.rename=false |
| select后非聚合列是否全部出现在group by中。 |
|
| table.database.onlyFullGroupBy=true |
| REAL数据类型转换使用,默认false,转换为DOUBLE PRECISION;改为true时,转换为REAL。 |
|
| table.database.realAsFloat=false |
| having clause语句是否添加GROUP BY。 |
|
| table.database.havingAddGroupBy=true |
| uuid函数是否以原语句函数原样输出:
默认false。 |
|
| table.function.uuid=false |
| split 拆分函数:
|
|
| table.function.split=true |
| try_cast函数是否以原语句函数原样输出。
|
|
| table.function.tryCast=false |
| setNames语句是否注释,不转换。
|
|
| table.sql.set.names=true |
| setPassword语句是否注释,不转换。
|
|
| table.sql.set.password=true |
| setResourceGroup语句是否注释,不转换。
|
|
| table.sql.set.resource.group=true |
| setRole语句是否注释,不转换。
|
|
| table.sql.set.role=true |
| setVariable语句是否注释,不转换。
|
|
| table.sql.set.variable=true |
| SQL文件的转换类型:ddl/plsql。 默认为ddl,当要执行存储过程或自定义函数时转换类型为plsql。 |
|
| sql.conversion.type=ddl |
| 插入时主键或唯一索引冲突的处理方式:
|
|
| table.insert.convert.upsert=false |
| 是否支持alter table ... add index转换。 默认false不转换, true转换。 |
|
| table.alter.add.index=false |
| 是否注释多余的约束, 默认false不注释。 |
|
| table.create.comment.constraint=false |
| 是否对set类型增加check约束,默认false不增加。 |
|
| table.create.type.set=false |
| 是否对enum类型增加 in not null约束,默认false不增加。 |
|
| table.create.type.enum=false |
| 是否对列字段进行小写转换,默认为true,进行小写转换;false为与原sql保持大小写一致。 |
|
| table.create.columnCase=true |
| 指定列存存储格式的版本,默认值2.0,可选值 1.0、2.0、3.0。 |
|
| table.option.colversion=2.0 |
| 源数据库类型,包括bigquery、doris、 synapse、 mysql&adb,默认为mysql&adb。 |
|
| table.origin.database.type =mysql |
| 是否允许hstore表,true/false(默认为空,false代表在语句中设置hstore为false)。 |
|
| table.enable.hstore= |
| 是否允许hstore_opt操作,true表示运行,false表示禁止。 |
|
| table.enable.hstore.opt=true |
| 是否将partition的原始SQL输出为注释,true/false。 |
|
| table.partition.comment.enable=false |
| 创建type时,type名称是否拼接schema名,true/false。 |
|
| table.type.schema.prefix=true |
| 分区参数partition_expiration_days需要转为整数,指定四舍五入规则。
|
|
| table.option.partition.ttl=HALF_UP |

