本文介绍将数据归档至云原生多模数据库Lindorm的注意事项以及操作步骤。
前提条件
支持如下类型的源数据库:
MySQL类型:RDS MySQL、PolarDB MySQL版、AnalyticDB MySQL 3.0。
PostgreSQL类型:RDS PostgreSQL、PolarDB PostgreSQL版。
PolarDB分布式版。
说明物理库和逻辑库均支持。
物理库:具体的某个数据库。
逻辑库:由单个或多个物理库配置而成,可便捷地进行分库分表的操作。更多信息,请参见逻辑库。
MySQL数据库账号必须具有REPLICATION CLIENT权限。
注意事项
源库和目标库的管控模式均为安全协同或稳定变更,才可执行周期归档任务。若您仅需要单次执行归档任务,则不限制数据库的管控模式。
费用说明
购买目标实例的费用。
数据归档
- 登录数据管理DMS 5.0。
在顶部菜单栏中,选择 。
说明若您使用的是极简模式的控制台,请单击控制台左上角的图标,选择
。在页面右上角,单击数据归档。
在新建数据归档工单页面,配置工单信息。
配置项
是否必填
说明
任务名
是
请输入明确、清晰的任务名,以减少沟通成本。
归档目标
是
选中Lindorm。
Lindorm实例
是
搜索并选择目标Lindorm实例。
源数据库
是
搜索并选择源数据库。
归档配置
是
选择需要归档数据的表。
可选:输入归档数据的过滤条件。例如,
gmt_modified<='${6_month_ago}'
。说明如果您需要使用时间变量,例如,归档6个月前的数据,可以先进行变量配置。
可选:单击添加,添加多个源表。
归档表映射
否
您可以单击表名操作列下的编辑,编辑源表归档到目标库后的表名、列信息、分库键和分区键。
变量配置
否
配置该变量可以在配置归档过滤条件时使用。例如,时间变量为
6_month_ago
,时间格式为yyyy-MM-dd,偏移量设置为-6月。如果当前日期为2021-8-12,则变量${6_month_ago}
的值为2021-02-11。配置时间变量的更多信息,请参见配置时间变量。后置行为
否
若您选中清理原表已归档数据(delete-无锁),则在归档完成后,系统将自动执行归档后的源表数据删除操作,可以通过无锁数据变更的
DELETE
语句完成。但删除源表的同时,源库中会生成存储此次归档数据的备份临时表,请保证源库空间充足,避免空间容量不足引发实例不可用问题。清理备份临时表:您可以在确认数据归档完成且数据无误后,通过新建普通数据变更工单,清理源库中的备份临时表。
若您未选中清理原表已归档数据(delete-无锁),则需要在数据归档成功后,手动进行源表数据删除和空间优化。
清理源表数据:通过新建普通数据变更工单清理数据库中已归档的数据。新建普通数据变更工单,请参见普通数据变更。
源表空间优化:通过新建无锁变更工单完成源表空间优化。新建无锁变更工单,请参见通过无锁变更工单实现无锁结构变更。
若您选中校验归档数据,则会在执行归档任务时,对归档数据进行校验,校验内容包含归档表名、源库、SQL条数等信息,可通过校验详情查看。
运行方式
是
选择运行方式,当前支持:
单次执行:工单审核通过后,仅单次运行归档任务。
周期调度:工单审核通过后,可根据部署的周期调度执行归档任务。具体配置,请参见周期调度。
单击提交申请。
工单审批通过后,系统自动执行数据归档任务。
若任务执行失败,您可在工单的执行区域,单击操作列下的详情,查看归档任务日志,找出任务执行失败的原因。若是由于网络或数据库连接失败等偶然发生的问题,您也可以单击断点重试,尝试重新执行。
归档后查询数据
方式一:通过DMS查询归档数据
数据归档任务执行成功后,您可在当前工单详情页的基本信息区域,单击目标库右侧的查看。
进入SQL Console页面后,在左侧表列表区域,选择并双击目标表名,再单击执行,查看已归档的数据。
说明系统会自动根据源数据库的库表名称在归档实例上生成库和表,所以此处的目标数据库名称与源库名称相同。
归档后的表会新增四列数据,不影响表原始数据的使用:
归档信息(工单号和归档时间)
数据库名称
表名称
实例ID(DMS录入实例时赋予的ID,与实例真实ID对应)
方式二:通过Lindorm查询归档数据
宽表引擎数据查询。
周期调度
配置项 | 说明 |
调度周期 | 选择调度任务的周期:
|
定时调度 | 提供了2种定时调度的方式:
|
指定时间 |
|
具体时间 | 设置执行任务流的具体时间。 例如配置02:55,系统将在指定天的02时55分执行任务。 |
cron表达式 | 不需要手动配置,系统会根据您配置的周期、具体时间自动展现。 |