更新时间:2024-07-19 GMT+08:00

MySQL配置

设置MySQL配置参数可在迁移MySQL数据库脚本时自定义迁移工具的行为。

打开config文件夹中的features-mysql.properties文件,并根据实际需要设置features-mysql.properties文件中的配置参数中的参数。

表1 features-mysql.properties文件中的配置参数

参数

说明

取值范围

默认值

样例

  • table.databaseAsSchema
  • table.defaultSchema

是否使用数据库名称作为schema名称,如果数据库名称不存在,则使用用户定义schema, 如果用户定义schema为空,则使用默认schema。

  • true
  • false
  • public
  • true
  • public
  • table.databaseAsSchema=true
  • table.defaultSchema=public
  • table.schema

用户设置的schema名称,如果该参数不为空,则使用该参数,即使包含useDatabaseAsSchema = true,也会使用当前schema名称。

  • schemaName
  • 默认为空
  • table.schema=
  • table.orientation

默认数据存储方式,ROW:行存储,COLUMN:列存储。

  • ROW
  • COLUMN
  • ROW
  • table.orientation=ROW
  • table.type

默认的表类型,分区表、复制表、round-robin表。 REPLICATION、HASH、ROUND-ROBIN。

  • HASH
  • REPLICATION
  • ROUND-ROBIN
  • HASH
  • table.type=HASH
  • table.tablespace

表空间选项。

  • COMMENT
  • RESERVE
  • RESERVE
  • table.tablespace=RESERVE
  • table.partition-key.choose.strategy

分区键选择策略。

  • partitionKeyChooserStrategy
  • partitionKeyChooserStrategy
  • table.partition-key.choose.strategy=partitionKeyChooserStrategy
  • table.partition-key.name

分区键设置,如果为空,则按照默认策略选择,如果有多列,用逗号分隔,忽略列名称大小写。

  • 预留参数
  • 默认为空
  • table.partition-key.name=
  • table.compress.mode

创建新表时,需要在CREATE TABLE语句中指定关键字COMPRESS,这样,当对该表进行批量插入时就会触发压缩特性。该特性会在页范围内扫描所有元组数据,生成字典、压缩元组数据并进行存储。指定关键字NOCOMPRESS则不对表进行压缩。

  • COMPRESS
  • NOCOMPRESS
  • NOCOMPRESS
  • table.compress.mode=NOCOMPRESS
  • table.compress.row

  • table.compress.column

指定表数据的压缩级别,它决定了表数据的压缩比以及压缩时间。

  • YES
  • NO

  • YES
  • NO
  • LOW
  • MIDDLE
  • HIGH
  • NO

  • LOW
  • table.compress.row=NO

  • table.compress.column=LOW
  • table.compress.level

指定表数据同一压缩级别下的不同压缩水平,它决定了同一压缩级别下表数据的压缩比以及压缩时间。对同一压缩级别进行了更加详细的划分,为用户选择压缩比和压缩时间提供了更多的空间。总体来讲,此值越大,表示同一压缩级别下压缩比越大,压缩时间越长;反之亦然。

  • 0
  • 1
  • 2
  • 3
  • 0
  • table.compress.level=0
  • table.database.template

数据库模板。

  • 预留参数
  • template0

table.database.template=template0

  • table.database.encoding

A database code.

  • UTF8
  • SQL_ASCII
  • GBK
  • Latin1 codes
  • UTF8

table.database.encoding=UTF8

  • table.index.rename

创建索引时,是否重新命名索引名。

  • true
  • false

false

table.index.rename=false

  • table.database.onlyFullGroupBy

select后非聚合列是否全部出现在group by中。

  • true
  • false

true

table.database.onlyFullGroupBy=true

  • table.database.realAsFloat

REAL数据类型转换使用,默认false,转换为DOUBLE PRECISION;改为true时,转换为REAL。

  • true
  • false

false

table.database.realAsFloat=false