【Kingbase FlySync】界面化管控平台:2.配置数据库同步之KES>KES
【Kingbase FlySync】界面化管控平台:3.配置数据库同步之KES->KES
- 部署KES数据库到KES数据库同步服务
- 1.登录KFS管理平台
- 2.开始配置数据节点信息
- (1)配置node1数据节点
- (2)配置node2数据节点
- 3.KFS拓扑图配置
- 4.开始部署
- 5.启动同步程序并查验是否运行正常
- 测试同步
- 1.从node1数据库中导出exam模式并拷贝到node2 /tmp目录下
- 2.将node1传过来的数据导入到node2数据库中
- 3.修改拓扑图配置实现增量搬迁同步
- (1).修改node1节点配置
- (2).修改node2节点配置
- (3).更新同步配置
- (4).启动同步节点
- (5).更新同步配置
- 数据校验
- 1.准备数据
- 2.校验配置
- 3.新建校验任务
- 4.新建调度任务
- 5.执行校验
- 数据自动修复
- 1.新建数据自动修复任务
- 2.再次执行数据校验任务
- 3.查询修复结果
- 配置告警邮件
- 1.告警邮箱配置
- 2.配置告警管理
- 3.错误问题
- (1).邮件发送提示失败
- (2).配置告警提示失败
- 4.邮件告警展示
部署KES数据库到KES数据库同步服务
1.登录KFS管理平台
账号 | 密码 |
---|---|
admin | admin |
user_0017 | Kfs123#$ |
2.开始配置数据节点信息
- 【部署管理】>【节点管理】>【新建】> 【填入相关信息】 >【保存】
- 安装目录:/home/flysync/replicator
(1)配置node1数据节点
点击保存
(2)配置node2数据节点
点击保存
3.KFS拓扑图配置
【部署管理】>【拓扑配置】
4.开始部署
5.启动同步程序并查验是否运行正常
【部署管理】> 【节点管理】>【启动】。
查看服务状态
【部署管理】> 【服务管理】
测试同步
1.从node1数据库中导出exam模式并拷贝到node2 /tmp目录下
[root@node1 ~]# su - kingbase
上一次登录:五 11月 17 18:13:59 CST 2023pts/1 上
[kingbase@node1 ~]$ cd /KingbaseES/V8/Server/bin/
[kingbase@node1 bin]$ ./sys_dump -U flysync -d test -f /tmp/exam.dmp -Fc -n exam
[kingbase@node1 bin]$ scp /tmp/exam.dmp node2:/tmp
kingbase@node2's password:
exam.dmp 100% 16KB 16.3KB/s 00:00
[kingbase@node1 bin]$
2.将node1传过来的数据导入到node2数据库中
[root@node2 ~]# su - kingbase
上一次登录:五 11月 17 15:54:16 CST 2023
[kingbase@node2 ~]$ cd /KingbaseES/V8/Server/bin/
[kingbase@node2 bin]$ ./ksql -Usystem test -c 'create schema exam0017'
CREATE SCHEMA
[kingbase@node2 bin]$ ./sys_restore -Usystem /tmp/exam.dmp -d test -Fc -g exam -G exam0017
[kingbase@node2 bin]$ ksql -U flysync -d test
ksql (V8.0)
输入 "help" 来获取帮助信息.test=# ALTER TABLE exam01.course RENAME TO course0017;
test=# \d exam0017.*索引 "exam0017.cno_pk"栏位 | 类型 | 键值? | 定义
------+--------------+-------+------cno | numeric(2,0) | 是 | cno
主键(PK),btree, 给数据表 "exam0017.course"数据表 "exam0017.course"栏位 | 类型 | 校对规则 | 可空的 | 预设
-----------+----------------------------+----------+----------+------cno | numeric(2,0) | | not null | cname | character varying(30 char) | | not null | clevel | character varying(13 char) | | | pass_mark | numeric(5,0) | | not null |
索引:"cno_pk" PRIMARY KEY, btree (cno)
检查约束限制"pass_mark_ck" CHECK (pass_mark > 0::numeric)
由引用:TABLE "exam0017.score" CONSTRAINT "cno_fk" FOREIGN KEY (cno) REFERENCES exam0017.course(cno)索引 "exam0017.id_no_uk"栏位 | 类型 | 键值? | 定义
-------+----------------------------+-------+-------id_no | character varying(18 char) | 是 | id_no
唯一的,btree, 给数据表 "exam0017.student"索引 "exam0017.ino_pk"栏位 | 类型 | 键值? | 定义
------+--------------+-------+------ino | numeric(3,0) | 是 | ino
主键(PK),btree, 给数据表 "exam0017.instructor"数据表 "exam0017.instructor"栏位 | 类型 | 校对规则 | 可空的 | 预设
-------+----------------------------+----------+----------+------ino | numeric(3,0) | | not null | iname | character varying(20 char) | | not null | title | character varying(30 char) | | |
索引:"ino_pk" PRIMARY KEY, btree (ino)
由引用:TABLE "exam0017.score" CONSTRAINT "ino_fk" FOREIGN KEY (ino) REFERENCES exam0017.instructor(ino)数据表 "exam0017.instructor_history"栏位 | 类型 | 校对规则 | 可空的 | 预设
----------+----------------------------+----------+----------+------ino | numeric(3,0) | | | iname | character varying(20 char) | | not null | title | character varying(30 char) | | | res_date | date | | | 索引 "exam0017.phone_uk"栏位 | 类型 | 键值? | 定义
-------+---------------+-------+-------phone | numeric(11,0) | 是 | phone
唯一的,btree, 给数据表 "exam0017.student"数据表 "exam0017.score0017"栏位 | 类型 | 校对规则 | 可空的 | 预设
-------------+--------------+----------+----------+------sno | numeric(4,0) | | not null | cno | numeric(2,0) | | not null | ino | numeric(3,0) | | not null | exam_date | date | | not null | score | numeric(5,0) | | | certificate | boolean | | |
索引:"score_pk" PRIMARY KEY, btree (cno, sno, ino, exam_date)
检查约束限制"score_ck" CHECK (score >= 0::numeric)
外部键(FK)限制:"cno_fk" FOREIGN KEY (cno) REFERENCES exam0017.course(cno)"ino_fk" FOREIGN KEY (ino) REFERENCES exam0017.instructor(ino)"sno_fk" FOREIGN KEY (sno) REFERENCES exam0017.student(sno)
触发器:t_update_score AFTER INSERT ON exam0017.score FOR EACH ROW
BeginUPDATE exam0017.score t SET t.certificate=0 WHERE t.score<70;
END索引 "exam0017.score_pk"栏位 | 类型 | 键值? | 定义
-----------+--------------+-------+-----------cno | numeric(2,0) | 是 | cnosno | numeric(4,0) | 是 | snoino | numeric(3,0) | 是 | inoexam_date | date | 是 | exam_date
主键(PK),btree, 给数据表 "exam0017.score"序列数 "exam0017.seq_student_sno"类型 | 起始值 | 最小值 | 最大值 | 增量 | 循环? | 缓存
--------+--------+--------+--------+------+-------+------bigint | 1001 | 1 | 9999 | 1 | no | 1索引 "exam0017.sno_cno_pk"栏位 | 类型 | 键值? | 定义
------+--------------+-------+------sno | numeric(4,0) | 是 | sno
主键(PK),btree, 给数据表 "exam0017.student"数据表 "exam0017.student"栏位 | 类型 | 校对规则 | 可空的 | 预设
----------+----------------------------+----------+----------+-----------------------------------------------sno | numeric(4,0) | | not null | nextval('exam0017.seq_student_sno'::regclass)sname | character varying(20 char) | | | gender | character varying(2 char) | | | phone | numeric(11,0) | | not null | id_no | character varying(18 char) | | | city | character varying(20 char) | | | reg_date | date | | | job | character varying(30 char) | | | company | character varying(30 char) | | |
索引:"sno_cno_pk" PRIMARY KEY, btree (sno)"id_no_uk" UNIQUE CONSTRAINT, btree (id_no)"phone_uk" UNIQUE CONSTRAINT, btree (phone)
检查约束限制"gender_ck" CHECK (gender::text = 'm'::text OR gender::text = 'f'::text)
由引用:TABLE "exam0017.score" CONSTRAINT "sno_fk" FOREIGN KEY (sno) REFERENCES exam0017.student(sno)视图 "exam0017.v_score_information"栏位 | 类型 | 校对规则 | 可空的 | 预设
-------+----------------------------+----------+--------+------sname | character varying(20 char) | | | iname | character varying(20 char) | | | cname | character varying(30 char) | | | score | numeric(5,0) | | | test=# SELECT relkind,relname FROM sys_class WHERE relnamespace = (select oid from sys_namespace where nspname='exam0017') ;relkind | relname
---------+---------------------r | courser | instructor_historyr | studentS | seq_student_snov | v_score_informationi | cno_pki | id_no_uki | ino_pki | phone_uki | score_pki | sno_cno_pkr | scorer | instructor
(13 行记录)
test=#
- 现在已将表结构和数据都存到了node2中
3.修改拓扑图配置实现增量搬迁同步
(1).修改node1节点配置
【部署管理】>【拓扑管理】 >【双击node1节点】 >【高级属性】>【过滤器】>【新增】 >【replicate】 >【设置】 >【填入相关信息】。
(2).修改node2节点配置
【部署管理】>【拓扑管理】 >【双击node2节点】 >【高级属性】>【过滤器】>【新增】 >【replicate】 >【设置】 >【填入相关信息】。
(3).更新同步配置
然后点击【安装/更新】按钮,更新配置
点击确定
耐心等待直到出现安装完成字样
(4).启动同步节点
点击停止后再次启动启动
(5).更新同步配置
在node1数据库exam模式的course和instructor表下插入数据
[kingbase@node1 bin]$ ./ksql -U flysync -dtest
ksql (V8.0)
输入 "help" 来获取帮助信息.test=# INSERT INTO exam.course VALUES(40,'KFS','middle',80);
INSERT 0 1
test=# INSERT INTO exam.instructor VALUES(108,'fenxiaoyue','Intermediate Instructor');
INSERT 0 1
test=# \q
[kingbase@node1 bin]$
在node2数据库exam模式下查询course和instructor表新增的数据
[kingbase@node2 bin]$ ksql -U flysync -d test
ksql (V8.0)
输入 "help" 来获取帮助信息.test=# SELECT * FROM exam0017.course0017 WHERE cno=40; cno | cname | clevel | pass_mark
-----+-------+--------+-----------40 | KFS | middle | 80
(1 行记录)test=# SELECT * FROM exam0017.instructor WHERE ino=108;ino | iname | title
-----+------------+-------------------------108 | fenxiaoyue | Intermediate Instructor
(1 行记录)test=#
数据校验
1.准备数据
在node2(target端)误操作制造主备两端数据不一致。
[kingbase@node2 bin]$ ksql -U flysync -d test
ksql (V8.0)
输入 "help" 来获取帮助信息.test=# UPDATE exam0017.student SET phone=15723449970 WHERE sno=1008;
UPDATE 1
test=# DELETE FROM exam0017.student WHERE sno=1006;
DELETE 1
test=# INSERT INTO exam0017.student(sno,sname,gender,phone) VALUES('1009','Huang Tao','m',13812447980) ;
INSERT 0 1
test=# \q
[kingbase@node2 bin]$
2.校验配置
【数据校验】>【校验配置】>【数据校验及数据修复配置】
- 参数配置如下
- 任务并行数 2(不要超出物理CPU核数)。
- 校验核心线程数 5。
- 校验同步大小 50000。
- 修复批量大小 10000。
- 校验同步记录日志 开启。
- 校验结果自动清除 开启,设置为3天。
- 是否校验大对象 开启。
- 大对象校验阈值 5000000
- 同步跳过超阈值数据 关闭。
- 刷新分片设置 关闭。
3.新建校验任务
【数据校验】 >【任务配置】 >【新建】。
源配置:
选择exam模式下的所有表
目标配置:
选择exam0017模式下的所有表
4.新建调度任务
【调度管理】> 【新建调度】
5.执行校验
执行第一次校验
点击查看详情查看校验结果
数据自动修复
1.新建数据自动修复任务
2.再次执行数据校验任务
3.查询修复结果
配置告警邮件
1.告警邮箱配置
2.配置告警管理
点击测试
收到邮件点击保存
3.错误问题
(1).邮件发送提示失败
- 检查你的虚拟机是否网络畅通
- 检查你的邮箱smtp是否开通,授权码填写在密码栏
(2).配置告警提示失败
检查你新增加的用户邮箱是否和告警配置的一致
4.邮件告警展示
相关文章:

【Kingbase FlySync】界面化管控平台:2.配置数据库同步之KES>KES
【Kingbase FlySync】界面化管控平台:3.配置数据库同步之KES->KES 部署KES数据库到KES数据库同步服务1.登录KFS管理平台2.开始配置数据节点信息(1)配置node1数据节点(2)配置node2数据节点 3.KFS拓扑图配置4.开始部署5.启动同步程序并查验是否运行正常 测试同步1.从node1数据…...

企业计算机服务器中了mallox勒索病毒怎么解决,勒索病毒解密文件恢复
随着科技技术的不断发展,网络技术得到了快速提升,但网络安全威胁也不断增加,近期,云天数据恢复中心陆续接到很多企业的求助信息,企业的计算机服务器遭到了mallox勒索病毒攻击,导致企业的所有业务中断&#…...

Sonar生成PDF错误Can‘t get Compute Engine task status.Retry..... HTTP error: 401
报错及修改: 报错:INFO: Can’t get Compute Engine task status.Retry… org.sonarqube.ws.connectors.ConnectionException: HTTP error: 401, msg: , query: org.apache.commons.httpclient.methods.GetMethod7a021f49 ERROR: Problem generating PD…...

storage和正则表达式
一、Storage 1.认识Storage WebStorage主要提供了一种机制,可以让浏览器提供一种比cookie更直观的key、value存储方式: localStorage:本地存储,提供的是一种永久性的存储方法,在关闭掉网页重新打开时,存…...
【数据结构】图的广度优先遍历
一.广度优先遍历的基本思想 (1)访问顶点v; (2)依次访问v的各个未被访问的邻接点v1,v2,v3……,vk; (3)分别从v1,v2,v3……...
AM@函数展开成幂级数@间接法@常用麦克劳林幂级数展开公式
文章目录 间接法推导幂级数展开常用麦克劳林幂级数展开公式应用例例例 间接法推导幂级数展开 已知函数的幂级数展开公式间接推导其他函数幂级数 使用原始的推导公式推导函数的幂级数展开是繁琐不便的,需要分别计算各项系数 a n f ( n ) ( 0 ) n ! a_{n}\frac{f^{(n)}(0)}{n!}…...

LeetCode994.腐烂的橘子
看完题我觉得这不是和上一道岛屿的题一样简单嘛,然后写了将近2个小时才写出来,我的思路就是,用check()先对grid检查一下,是否有以下情况: (如果有1的周围都是空,则这个位置用不腐烂,…...

【开源】基于Vue和SpringBoot的康复中心管理系统
项目编号: S 056 ,文末获取源码。 \color{red}{项目编号:S056,文末获取源码。} 项目编号:S056,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 普通用户模块2.2 护工模块2.3 管理员…...

【音视频基础】AVI文件格式
AVI文件采用的是RIFF文件结构方式。波形音频wave,MIDI和数字视频AVI都采用这种格式存储。 AVI文件的整体结构如下图所示 构造RIFF文件的基本单元叫做数据块(Chunk),每个数据块包含3个部分 4字节的数据块标记(或者叫…...
图书馆整理I(从尾到头打印列表),剑指offer,力扣
目录 题目地址: 我们直接看题解吧: 解题方法: 难度分析: 审题目事例提示: 解题思路(辅助栈): 代码(递归): 代码(列表插入): 相似题目对…...

C++编写的多线程自动爬虫程序
目录 引言 一、程序的设计 二、程序的实现 三、程序的测试 四、优化与改进 五、代码示例 总结 引言 随着互联网的快速发展,网络爬虫程序已经成为数据采集、信息处理的重要工具。C作为一种高效的编程语言,具有高效的并发处理能力和丰富的网络编程…...
SMB信息泄露的利用
一、背景 今天分享SMB信息泄露,SMB(Server Message Block)网络通信协议,早些时候被用于Web链接和客户端与服务器之间的信息通信,现在大部分Web页面使用HTTP协议,在web领域应用较少。另一方面SMB协议还是被…...

QT自定义信号,信号emit,信号参数注册
qt如何自定义信号 使用signals声明返回值是void在需要发送信号的地方使用 emit 信号名字(参数)进行发送 在需要链接的地方使用connect进行链接 ct进行链接...
06.webpack性能优化--构建速度
优化babel-loaderhappyPackIgnorePluginparalleUglifyPluginnoParse自动刷新 1 happypack多进程打包 js单线程,开启多进程打包提高构建速度(特别是多核CPU) const HappyPack require(happypack)module.exports smart(webpackCommonConf,…...

11-15 周三 softmax 回归学习
11-15 周三 softmax 回归学习 时间版本修改人描述2023年11月15日11:17:27V0.1宋全恒新建文档 简介 softmax分享可以参考什么是softmax 回归估计一个连续值,分类预测一个离散类别。 恶意软件的判断 回归和分类 分类可以认为从回归的单输出变成多输出 B站学习 softm…...
React新手必懂的知识点
react思想:组件化开发 React 的核心概念是组件化开发,将用户界面拆分成独立的可复用组件。学习如何创建和使用 React 组件,以及组件之间的数据传递和通信是非常重要的。 React的思想就是拆分组件与使用组件。 import React from react;// 定…...
es为什么这么快
es为什么这么快的方式 es的基于Lucene开源搜索引擎,负责文件存储和搜索,支持http请求,以json形式展示 这样介绍你有可能有点迷糊我们详细解释 es 使用的倒排索引的方式,进行数据存储方式,给每一个字段创建索引&…...

Pandas分组聚合_Python数据分析与可视化
Pandas分组聚合 分组单列和多列分组Series 系列分组通过数据类型或者字典分组获取单个分组对分组进行迭代 聚合应用单个聚合函数应用多个聚合函数自定义函数传入 agg() 中对不同的列使用不同的聚合函数 分组聚合的流程主要有三步: 分割步骤将 DataFrame 按照指定的…...

VMware17虚拟机Linux安装教程(详解附图,带VMware Workstation 17 Pro安装)
一、安装 VMware 附官方下载链接(VM 17 pro):https://download3.vmware.com/software/WKST-1701-WIN/VMware-workstation-full-17.0.1-21139696.exe 打开下载好的VMware Workstation 17 Pro安装包; 点击下一步; 勾选我…...

基于SDN技术构建多平面业务承载网络
随着企业数字化的浪潮席卷各个行业,传统网络架构面临着更为复杂和多样化的挑战。企业正在寻找一种全面适应数字化需求的网络解决方案。随着软件定义网络(SDN)的发展,“多业务SDN一张网”解决方案为企业提供了一种全新的网络架构&a…...

国防科技大学计算机基础课程笔记02信息编码
1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制,因此这个了16进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...

Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)
文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
Pinocchio 库详解及其在足式机器人上的应用
Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...

【LeetCode】算法详解#6 ---除自身以外数组的乘积
1.题目介绍 给定一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O…...

论文阅读:LLM4Drive: A Survey of Large Language Models for Autonomous Driving
地址:LLM4Drive: A Survey of Large Language Models for Autonomous Driving 摘要翻译 自动驾驶技术作为推动交通和城市出行变革的催化剂,正从基于规则的系统向数据驱动策略转变。传统的模块化系统受限于级联模块间的累积误差和缺乏灵活性的预设规则。…...

stm32wle5 lpuart DMA数据不接收
配置波特率9600时,需要使用外部低速晶振...
Vue3中的computer和watch
computed的写法 在页面中 <div>{{ calcNumber }}</div>script中 写法1 常用 import { computed, ref } from vue; let price ref(100);const priceAdd () > { //函数方法 price 1price.value ; }//计算属性 let calcNumber computed(() > {return ${p…...

6.9-QT模拟计算器
源码: 头文件: widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QMouseEvent>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widget(QWidget *parent nullptr);…...

Java数组Arrays操作全攻略
Arrays类的概述 Java中的Arrays类位于java.util包中,提供了一系列静态方法用于操作数组(如排序、搜索、填充、比较等)。这些方法适用于基本类型数组和对象数组。 常用成员方法及代码示例 排序(sort) 对数组进行升序…...