- 修复mysql 5.6和mariadb无法获取受影响行数的问题
- 添加
max_insert_rows
参数,设置insert values允许的最大行数。 - 添加
must_have_columns
参数,用以指定建表时必须创建的列。多个列时以逗号分隔(格式: 列名 [列类型,可选]
)
- 添加不支持的语法警告(create table as和create table select)
- 实现alter多子句时的表结构变化支持,如drop column后跟add column
- 修复explain返回null列时报错的问题
- 修复索引的唯一标识设置错误问题
- 添加远端数据库断开重连机制,优化线程号和master status查询速度
- 优化远端数据库访问操作
- 优化sql内容解析,移除多余分号和空格
- 修复跨库update时无法找到列的问题
- 修复osc子句有双引号时执行错误的问题
- 添加sql指纹功能
dml语句相似时,可以根据相同的指纹ID复用explain结果,以减少远端数据库explain操作,并提高审核速度
- 可以通过
inception set enable_fingerprint=1;
或配置文件开启全局配置 - 也可以通过调用选项
--fingerprint=1;
开启单个配置 - 两种配置取并集,即开启任一配置,则启用sql指纹功能,默认关闭。
- 可以通过
- 备份操作性能优化,备份信息改为批量写入
- 添加备份库连接超时检查
- explain函数性能优化
- 优化部分函数未指定架构名时的默认处理
- 优化默认值检查,添加计算列支持 (#12, #13, #14)
- 优化时间格式和范围检查,根据数据库sql_mode校验零值日期
- 升级到go 1.12
- 修复index name校验逻辑,其可与列名一致
- 修复timestamp默认值校验不准确的问题
- 添加kill功能支持,在审核和执行时可以kill,备份阶段无法kill (#10)
- 添加
check_timestamp_count
参数,可配置是否检查current_timestamp数量 (#11, #15)
- 变更列名时使用逻辑校验,避免explain update失败
- 添加union子句校验
- 添加表名别名重复性校验
- 修复update set子句指定表别名时校验问题
- 修复自增列校验问题
- 修复default value为表达式时的校验问题
- 优化主键NULL列审核规则(审核
DEFAULT NULL
) - 优化索引总长度校验,根据列字符集判断字节数长度
- 优化DDL备份对默认值的处理
- 优化option解析规则,密码兼容特殊字符
- 优化语法解析失败时返回的sql语句
- 添加中文的异常和警告信息
- 添加新的参数
- lang 设置返回的异常信息语言,可选值
en-US
,zh-CN
,默认en-US
- lang 设置返回的异常信息语言,可选值
- 修复mariadb备份警告信息重复的问题
- 兼容mariadb v10版本的备份兼容(高并发时回滚语句可能有误,须注意检查)
- 更新pt-osc部分参数名,使其与inception保持一致
- osc_critical_running -> osc_critical_thread_running
- osc_critical_connected -> osc_critical_thread_connected
- osc_max_running -> osc_max_thread_running
- osc_max_connected -> osc_max_thread_connected
- 隐藏gh-osc部分未使用参数
- 添加是否允许删除数据库参数
enable_drop_database
- 优化系统变量variables显示和设置
- 调整部分参数默认值
- ghost_ok_to_drop_table
true
- ghost_skip_foreign_key_checks
true
- osc_chunk_size
1000
- ghost_ok_to_drop_table
- 修复json列校验异常问题 (#7)
- 兼容mariadb数据库(v5.5.60)
- 添加mariadb的binlog解析支持(测试版本v5.5.60,v10版本由于binlog格式改变,暂无法解析thread_id)
- 优化备份失败时的返回信息
- 添加gh-ost工具支持
- 无需安装gh-ost,功能内置(v1.0.48)
- 进程列表
inception get osc processlist
- 指定进程信息
inception get osc_percent 'sqlsha1'
- 进程终止
inception stop alter 'sqlsha1'
(同义词inception kill osc 'sqlsha1'
) - 进程暂停
inception pause alter 'sqlsha1'
(同义词inception pause osc 'sqlsha1'
) - 进程恢复
inception resume alter 'sqlsha1'
(同义词inception resume osc 'sqlsha1'
) - 兼容gh-ost参数
inception show variables like 'ghost%'
- 添加pt-osc工具支持
inception get osc processlist
查看osc进程列表inception get osc_percent 'sqlsha1'
查看指定的osc进程inception stop alter 'sqlsha1'
(同义词inception kill osc 'sqlsha1'
)中止指定的osc进程
-
优化二进制构建方式,压缩安装包大小
-
移除vendor依赖,优化GO111MODULE使用方式
-
跳过权限校验,以避免登陆goInception失败
-
移除root身份启动校验,以避免windows无法启动
-
优化inception set变量时的类型校验