更新时间:2026-07-31 GMT+08:00
使用无锁数据变更
操作场景
您可以在管理控制台中开启实例的无锁变更功能,开启后可以查询、停止和清理无锁变更任务,并下载任务日志,实现变更过程的自动化管理和快速定位异常。无锁变更任务的日志存储在对象存储服务(OBS)上,有效期为30天,请在有效期内下载日志,超过30天后日志将被自动删除。
无锁变更过程中会生成临时表,这些临时表会占用存储空间,为了避免产生额外费用,变更完成后,请确认业务正常运行并及时删除临时表。如果您终止了无锁变更任务,可能存在任务实际已经执行成功的情况,建议您检查变更是否成功,并确认是否有临时表残留,及时清理临时表以避免不必要的存储费用。
前提条件
- 已开通智能DBA助手功能。
- 需打开实例审计日志功能,详细内容请参见开启TaurusDB SQL审计日志。
- 需修改实例参数"rds_global_sql_log_bin”的值为"ON”,详细内容请参见修改TaurusDB实例参数。
约束限制
- 执行无锁变更期间,不允许做实例变更,实例备份等操作。
- 执行无锁变更动作,需要确保实例磁盘空间充足。
- 业务量大的场景下执行无锁变更,会增加变更失败概率,请选择业务低峰期操作。
- 选择变更的表不允许有外键,不支持有大小写同名的表,目标表其他约束请参见无锁数据变更简介。
使用无锁数据变更
- 登录TaurusDB管理控制台。
- 单击管理控制台左上角的
,选择区域。 - 在“实例管理”页面,选择目标实例,单击实例名称,进入“实例概览”页面。
- 在左侧导航栏选择“智能DBA助手”下的“无锁数据变更”。
- 单击“新增无锁变更任务”。
- 设置无锁变更任务参数,单击“确定”,新建无锁变更任务。选择“数据库名”,填写变更SQL,按需勾选“清理临时表”。 图1 新增无锁变更任务
表1 无锁变更任务参数 参数
说明
数据库名
目标DDL所在的数据库名称。
变更SQL
- 批量执行最多支持10条DDL语句,多条DDL语句用分号(;)隔开。
- 多条ALTER 语句不可操作同一张表。
清理临时表
任务执行结束后,系统会自动创建临时表,且不会自动删除。如需自动删除,请勾选此选项。
- 单击“确定”,下发无锁变更任务。
- 开启后,您可以在无锁变更任务列表中查看对应DDL语句的执行状态,也可执行如下操作。