hhdb数据库介绍(10-34)
管理
一键迁库
当集群中存在某个存储节点需要进行版本升级或服务器配置升级,需要将存储节点数据迁移至新的存储节点时,可通过人工将旧存储节点的数据复制到新存储节点上并且建立好复制之后,再使用一键迁库功能对存储节点进行迁移操作。
容灾模式说明:集群开启容灾模式时,一键迁库相关逻辑说明请结合跨机房容灾部署文档中的一键迁库章节。
普通用户模式下进入管理平台“管理-一键迁库”界面。该界面展示一键迁库历史记录,记录迁库任务的基本信息以及执行状态。用户可通过左上角的搜索框进行历史记录筛选,支持通过数据节点、执行状态、操作开始时间进行筛选。
历史记录展示信息如下:
- 数据节点:根据实际配置的迁库规则中,所选择的数据节点进行显示;
- 迁库源存储节点:指需要进行迁库的源存储节点;
- 迁库目标存储节点:指迁库任务对应的目标存储节点;
- 操作开始时间:指开始执行“迁库条件预检测”的时间,若存在多次“迁库条件预检测”的情况,则以最新的执行时间为准;
- 操作用户:指当前执行并配置此迁库任务的管理平台操作用户;
- 执行状态:显示“成功”、“失败”、“进行中”三种执行状态;
- 完成时间:指一键迁库任务的完成时间;
- 耗时:该信息展示一键迁库任务中第六步“迁库执行及完成”页面显示的耗时时间,将鼠标至于耗时数字上会显示更多汇总信息;
- 操作:用户可在操作列中执行对应的“详情”、“删除”、“编辑”操作。
源数据节点和目标存储节点选择
点击管理平台"管理->一键迁库"进入一键迁库功能页面。点击右上角【发起迁库】按钮发起一次迁库。使用迁库功能前需要注意以下几点:
-
执行迁库前,需要执行一次动态加载
-
在CPU许可证授权模式下,需提前在“配置->服务器”页面将新存储节点服务器添加到列表中,配置好SSH信息,“计算或存储节点”项选择“是”
-
可在迁库前手动搭建源存储节点与新存储节点之间的复制关系
-
也可通过管理平台,搭建源存储节点与数据节点之间的复制关系,逻辑同“节点管理->主从搭建”功能一致
-
选择要迁移的数据节点,选择源数据节点,界面会自动显示出该节点下的所有存储节点
-
设置对所选数据节点迁库完成后原有存储节点的处理方式。目前支持3种方式:删除源存储节点、将源存储节点设置为双主备库、将源存储节点设置为从库。(设置为从库时,需要选择是从主库复制还是从双主备库复制)
-
迁库操作目标数据节点不能是单库,必须有一个从库或双主备库。对于灾备模式,源数据节点只支持双主或主从类型的节点迁库
-
填写目标存储节点信息:数据节点、主机名、端口、数据库用户名、数据库密码、物理库名称、存储节点类型。填完后点击【测试连接】确保存储节点信息正确
-
点击【下一步】将对上述信息进行以下校验,需要全部通过才能进入下一步
每个新的目标数据节点必须有且仅有一个主库,双主备库最多只能有一个。
目标数据节点不能为单库类型,必须有一个双主备库或从库。
新目标存储节点不能与任何现有存储节点重合。
各个新存储节点能正常连接。
新主库的master必须是老节点的主库或者双主备库。
迁库条件预检测
-
新存储节点默认与源数据节点的主库搭建主从复制关系(源主库为master)
-
当源数据节点的非主库存储节点,处理方式选择为“双主备库”时,新存储节点与该存储节点搭建复制关系
-
当添加多个新存储节点时,所有新存储节点与新主库存储节点搭建主从复制关系(包括新的双主备库,也只搭建主从复制关系)
-
预检测第一步会判断是否存在复制关系,如已搭建完成复制关系的,后续预检测项不执行,直接跳转至“第四步:正式迁库时操作策略选择”
-
未搭建复制关系的,预检测逻辑与“节点管理-主从搭建”一致
-
每个检查项前的时间戳代表此项操作的开始时间
-
“取消迁库”按钮代表直接取消当前的迁库规则,不进行保存
搭建源库与目标库之间的复制关系
-
搭建复制关系任务页面,逻辑同“节点管理-主从搭建”一致
-
复制关系搭建失败或搭建成功但存在警告信息的,无法点击“下一步”按钮
-
单击“取消迁库”按钮会依据当前任务的状态给出对应提示框
正式迁库时操作策略选择
-
“由系统执行change master”:可选择是否由计算节点执行change master操作。勾选此选项将由计算节点执行复制搭建操作,计算节点会根据主从关系计算出需要执行change master的存储节点,也可以手动进行配置。(执行复制的用户需要有Reload操作权限,可以使用和存储节点相同的用户,也可以自行填写其他用户,自行填写的必须保证所有存储节点的用户名和密码相同)
-
不勾选此项,则计算节点不会进行change master操作,需要用户手动去存储节点实例中执行复制搭建
-
选择迁库完成后是否由计算节点自动配置切换规则,勾选此项,计算节点会自动根据主从关系创建切换规则,不勾选则需要用户手动配置切换规则
-
选择迁库完成后是否删除旧存储节点上的物理库,勾选此项计算节点会删除旧存储节点上的物理库,但是需要保证旧存储节点到新存储节点的复制已断开,因此需要计算节点执行change master,不勾选此项则不对旧存储节点进行操作
正式迁库前预检测
预检测会校验以下信息,如果校验未通过,需要根据提示修改配置信息,通过后才能进行迁库。
a.配置库检测
检查当前配置库内配置是否正确,同配置校验操作,有配置错误则报错,无法进行迁库操作。
b.目标存储节点连接状态
各个目标存储节点能否用填写的存储节点帐号正常连接。如果有任何一个目标存储节点无法用填写的存储节点帐号连接,报错。
c.目标存储节点复制关系
各个目标存储节点应该有DBA提前搭建好新目标存储节点的相关关系,确保每一个节点的目标存储节点应该和源存储节点的主库/双主备库先搭建成一个不含环的有向连通图。目标存储节点双主现状态只能是主从。
d.源存储节点和目标存储节点复制延迟检测
对复制延迟进行侦测,确保所有新存储节点的,计算节点机制的延迟,必须均小于10秒。不满足此条件需要提示报错(xx存储节点到xx存储节点延迟过大),必须等待复制延迟追上后,才可以使用自动迁库功能。确保可能存在的多个新纯从库,全部从新主库/新双主从库的集合复制数据,不满足此条件不允许进行自动迁库。
e.目标存储节点用户权限检测
勾选了由计算节点执行change master的情况下,判断需要change master的存储节点,检查对应帐号权限,如果是使用目标存储节点用户名密码,则检查该帐号是否有replication slave,replication client权限;如果选择了指定新的存储节点用户名、密码,如果该用户名已存在,则检查密码是否正确,是否拥有replication权限,如果该用户名不存在,报错。
f.现有存储节点复制关系
对需要迁库的每一个节点分别进行复制方向的侦测(侦测范围为有效的新旧存储节点),不满足条件不允许进行自动迁库。
g.心跳表不能有id值为3或4的记录
h.数据节点不能正在切换中
i.检测待搭建的主从存储节点GTID一致性以便判断是否可直接搭建主从
GTID模式下,程序会校验当前主库和从库之间的GTID一致性(逻辑和主从搭建一致),如不能直接进行复制搭建,程序会执行导出导入数据。
j.检测主从存储节点数据一致
非GTID模式下,程序会校验当前主库和从库数据一致性(逻辑和主从搭建一致),如不能直接进行复制搭建,程序会执行导出导入数据。
k.检测是否为需要进行数据导入/导出的服务器配置SSH权限
如果 i、j项检测后,需要导出导入数据,则需要校验是否配置服务器SSH信息(逻辑和主从搭建一致)。
l.检测是否需要执行RESET MASTER 以便清除目标从存储节点的Executed_Gtid
如果 i项检测后,需要导出导入数据,且从节点的GTID不为空,则需要对从存储节点执行命令(逻辑和主从搭建一致)。
执行迁库及完成
-
校验通过后点击【开始迁库】,计算节点开始执行迁库任务。执行过程中显示正在迁库中,执行完成后会提示迁库成功,如果发生异常,会给出相应提示,需要人工进行处理
-
迁库完成后若新引入节点未安装SM4插件,则提示安装
-
管理平台搭建复制关系并且导出导入数据的,在迁库完成后,会显示是否清理导出导入文件,逻辑同“节点管理-主从搭建”一致
-
迁库耗时汇总表格分别展示第二步、第三步、第五步及存储节点服务不可用的操作开始、结束以及总耗时时间
-
单击“返回”按钮即可返回到一键迁库主界面
-
若此时迁库失败,则允许创建重复的源数据节点的迁库任务
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了