- 审核参数
- 系统参数
- 审核参数
- MAX_TABLE_NAME_LENGTH
- CHECK_TABLE_COMMENT
- TABLE_COMMENT_LENGTH
- CHECK_IDENTIFIER
- CHECK_IDENTIFER_KEYWORD
- CHECK_TABLE_CHARSET
- TABLE_SUPPORT_CHARSET
- CHECK_TABLE_ENGINE
- TABLE_SUPPORT_ENGINE
- ENABLE_PARTITION_TABLE
- CHECK_TABLE_PRIMARY_KEY
- TABLE_AT_LEAST_ONE_COLUMN
- CHECK_TABLE_AUDIT_TYPE_COLUMNS
- enable_create_table_as
- enable_create_table_like
- ENABLE_FOREIGN_KEY
- CHECK_TABLE_AUTOINCREMENT_INIT_VALUE
- ENABLE_CREATE_VIEW
- MAX_COLUMN_NAME_LENGTH
- CHECK_COLUMN_CHARSET
- CHECK_COLUMN_COMMENT
- COLUMN_MAX_CHAR_LENGTH
- MAX_VARCHAR_LENGTH
- ENABLE_COLUMN_BLOB_TYPE
- ENABLE_COLUMN_JSON_TYPE
- ENABLE_COLUMN_TIMESTAMP_TYPE
- CHECK_PRIMARYKEY_USE_BIGINT
- CHECK_PRIMARYKEY_USE_UNSIGNED
- CHECK_PRIMARYKEY_USE_AUTO_INCREMENT
- ENABLE_COLUMN_NOT_NULL
- ENABLE_COLUMN_TIME_NULL
- CHECK_COLUMN_DEFAULT_VALUE
- CHECK_COLUMN_FLOAT_DOUBLE
- ENABLE_COLUMN_TYPE_CHANGE
- ENABLE_COLUMN_CHANGE_COLUMN_NAME
- ENABLE_COLUMN_TYPE_CHANGE_COMPATIBLE
- CHECK_UNIQ_INDEX_PREFIX
- CHECK_SECONDARY_INDEX_PREFIX
- CHECK_FULLTEXT_INDEX_PREFIX
- UNQI_INDEX_PREFIX
- SECONDARY_INDEX_PREFIX
- FULLTEXT_INDEX_PREFIX
- SECONDARY_INDEX_MAX_KEY_PARTS
- PRIMARYKEY_MAX_KEY_PARTS
- MAX_INDEX_KEYS
- ENABLE_INDEX_RENAME
- ENABLE_DROP_COLS
- ENABLE_DROP_INDEXES
- ENABLE_DROP_PRIMARYKEY
- ENABLE_DROP_TABLE
- ENABLE_TRUNCATE_TABLE
- ENABLE_RENAME_TABLE_NAME
- ENABLE_MYSQL_MERGE_ALTER_TABLE
- ENABLE_TIDB_MERGE_ALTER_TABLE
- DML_MUST_HAVE_WHERE
- DML_DISABLE_LIMIT
- DML_DISABLE_ORDERBY
- DML_DISABLE_SUBQUERY
- CHECK_DML_JOIN_WITH_ON
- EXPLAIN_RULE
- MAX_AFFECTED_ROWS
- MAX_INSERT_ROWS
- DISABLE_REPLACE
- DISABLE_INSERT_INTO_SELECT
- DISABLE_ON_DUPLICATE
- DISABLE_AUDIT_DML_TABLES
- DISABLE_AUDIT_DDL_TABLES
不支持通过接口
custom_audit_parameters
传递的参数
描述: 服务侦听地址 默认值: 127.0.0.1:8081
描述: 日志文件路径 默认值: ./logs
描述: 日志级别 默认值: info 可选值: debug/info/warn/error
Identifier Length Limits 支持通过接口
custom_audit_parameters
传递的参数
描述: 检查表名的长度 默认值: info 可选值: 1~64
描述: 检查表是否有注释 默认值: true 可选值: true/false
描述: 表的注释长度 默认值: 64 可选值: 1~512
描述: 对象名必须使用字符串范围,匹配正则[a-zA-Z0-9_] 默认值: true 可选值: true/false
描述: 对象名是否可以使用关键字 默认值: false 可选值: true/false
描述: 是否检查表的字符集和排序规则 默认值: true 可选值: true/false
描述: 表支持的字符集 默认值: [{"charset": "utf8", "recommend": "utf8_general_ci"}, {"charset": "utf8mb4", "recommend": "utf8mb4_general_ci"}] 可选值: DB支持的字符集 CASE:
default character set utf8mb4 collate utf8mb4_general_ci
描述: 是否检查表的存储引擎 默认值: true 可选值: true/false
描述: 表支持的存储引擎 默认值: ["InnoDB"] 可选值: DB支持的存储引擎 CASE:
ENGINE=InnoDB
描述: 是否启用分区表 默认值: false 可选值: true/false
描述: 检查表是否有主键 默认值: true 可选值: true/false
描述: 表至少要有一列,语法默认支持,调整参数无效 默认值: true 可选值: true/false
描述: 是否启用审计类型的字段检查,不检查字段名,仅检测字段定义是否符合要求,审计字段一般为创建时间
/更新时间
字段。
默认值: true
可选值: true/false
CASE:
CREATED_AT datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
UPDATED_AT datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间'
描述: 是否允许create table as语法 默认值: false 可选值: true/false
描述: 是否允许create table like语法 默认值: false 可选值: true/false
描述: 是否启用外键 默认值: false 可选值: true/false
描述: 检查建表是自增列初始值是否为1 默认值: true 可选值: true/false
描述: 是否支持创建和使用视图 默认值: true 可选值: true/false
描述: 列名的长度 默认值: 32 可选值: 1~64
描述: 是否检查列的字符集 默认值: true 可选值: true/false
描述: 是否检查列的注释 默认值: true 可选值: true/false
描述: char长度大于N的时候需要改为varchar 默认值: 64 可选值: 1~254
描述: 最大允许定义的varchar长度 默认值: 65534 可选值: 1~65534
描述: 是否允许列的类型为BLOB/TEXT 默认值: true 可选值: true/false
描述: 是否允许列的类型为JSON 默认值: true 可选值: true/false
描述: 是否允许列的类型为TIMESTAMP 默认值: false 可选值: true/false
描述: 主键是否为bigint 默认值: true 可选值: true/false
描述: 主键bigint是否为unsigned 默认值: true 可选值: true/false
描述: 主键是否定义为自增 默认值: true 可选值: true/false
描述: 列是否定义为NOT NULL 默认值: true 可选值: true/false
描述: 是否允许时间类型定义为NULL 默认值: true 可选值: true/false
描述: 列必须要有默认值 默认值: true 可选值: true/false
描述: 将float/double转成int/bigint/decimal等 默认值: true 可选值: true/false
描述: 是否允许变更列类型 默认值: false 可选值: true/false
描述: 是否允许CHANGE列名操作 默认值: false 可选值: true/false
描述: 是否开启CHANGE列类型兼容模式;开启后,允许同一类型,不同长度变更且变更后的长度必须大于变更前的长度的操作。允许操作举例: tinyint-> int、int->bigint、char->varchar 不允许操作举例:int -> tinyint、varchar -> char。ENABLE_COLUMN_TYPE_CHANGE_COMPATIBLE设置为true的同时需要设置ENABLE_COLUMN_TYPE_CHANGE=false才生效。 默认值: false 可选值: true/false
描述: 是否检查唯一索引前缀,如唯一索引必须以uniq_为前缀 默认值: true 可选值: true/false
描述: 是否检查二级索引前缀,如普通索引必须以idx_为前缀 默认值: true 可选值: true/false
描述: 是否检查全文索引前缀,如全文索引必须以full_为前缀 默认值: true 可选值: true/false
描述: 定义唯一索引前缀,不区分大小写 默认值: UNIQ_
描述: 定义二级索引前缀,不区分大小写 默认值: IDX_
描述: 定义全文索引前缀,不区分大小写 默认值: FULL_
描述: 组成二级索引的列数不能超过指定的个数,包括唯一索引 默认值: 8
描述: 组成主键索引的列数不能超过指定的个数 默认值: 1
描述: 最多有N个索引,包括唯一索引/二级索引 默认值: 12
描述: 是否允许rename索引名 默认值: false 可选值: true/false
描述: 是否允许DROP列 默认值: true 可选值: true/false
描述: 是否允许DROP索引 默认值: true 可选值: true/false
描述: 是否允许DROP主键 默认值: false 可选值: true/false
描述: 是否允许DROP TABLE 默认值: true 可选值: true/false
描述: 是否允许TRUNCATE TABLE 默认值: true 可选值: true/false
描述: 是否允许rename表名 默认值: false 可选值: true/false
描述: MySQL同一个表的多个ALTER是否合并为单条语句 默认值: true 可选值: true/false
描述: TiDB同一个表的多个ALTER是否合并为单条语句 默认值: false 可选值: true/false
描述: DML语句必须有where条件 默认值: true 可选值: true/false
描述: DML语句中不允许有LIMIT 默认值: true 可选值: true/false
描述: DML语句中不允许有orderby 默认值: true 可选值: true/false
描述: DML语句不能有子查询 默认值: true 可选值: true/false
描述: DML的JOIN语句必须有ON语句 默认值: true 可选值: true/false
描述: explain判断受影响行数时使用的规则("first", "max")。 "first": 使用第一行的explain结果作为受影响行数, "max": 使用explain结果中的最大值作为受影响行数 默认值: first 可选值: first/max
描述: 最大影响行数,默认100 默认值: 100
描述: 一次最多允许insert的行, eg: insert into tbl(col,...) values(row1), (row2)... 默认值: 100
描述: 是否禁用replace语句 默认值: true 可选值: true/false
描述: 是否禁用insert/replace into select语法 默认值: true 可选值: true/false
描述: 是否禁止insert on duplicate语法 默认值: true 可选值: true/false
适用场景: 多个库直接数据同步的主备表 描述: 禁止对指定的表进行DML审核 默认值: 空 配置例子:
"DISABLE_AUDIT_DML_TABLES": [
{
"DB": "test",
"Tables": [
"t1",
"t2"
],
"Reason": "xxx业务研发禁止审核和提交,请联系xxx"
}
]
适用场景: 多个库直接数据同步的主备表 描述: 禁止对指定的表进行DDL审核 默认值: 空 配置例子:
"DISABLE_AUDIT_DDL_TABLES": [
{
"DB": "test",
"Tables": [
"t1"
],
"Reason": "xxx业务研发禁止审核和提交,请联系xxx"
},
{
"DB": "test1",
"Tables": [
"c1",
"c2"
],
"Reason": "xxx业务研发禁止审核和提交,请联系xxx"
}
]