KingbaseES数据库迁移-SHELL方式

news2024/11/25 11:47:53

 

  • 目录说明

  • bin: 启动脚本

  • conf: 配置文件

  • doc: 帮助文档

  • drivers: 数据库连接驱动(注意不同版本驱动的存放目录差别,详见readme.md)

  • jdk: jdk

  • kdms: kdms程序

  • lib: 程序包

  • logs: 日志

  • result: 迁移报告

  • 配置数据库连接信息

  • 进入KDTS-CLI/conf目录下,打开application.yml文件,根据源库类型设置当前激活的源库配置(active: mysql),如下所示:

    ../../../_images/pactive-mysql.png

    在正确设置application.yml中的active项后,打开对应配置文件(datasource-mysql.yml),按实际运行环境进行配置即可。

  • 配置源端数据库连接信息、目标数据库连接信息

编辑conf/datasource-mysql.yml文件,编辑源端和目标端连接信息,包括url、driver-class-name、username、password信息,如下图所示:

../../../_images/pshell-source-mysql.png

../../../_images/pshell-target.png

  • 配置要迁移的源库模式,数据库对象,涉及到的参数见下图:

    ../../../_images/pshell-object.png

../../../_images/pshell-istransfer.png

  • 迁移配置参数说明

    编辑conf/datasource-mysql.yml文件有多个配置参数,可灵活使用。以下列举常用的配置参数。

  • fetchSize:

    游标提取记录数(每次和服务器交互提取的数据行数,加大该值可提升读取效率,但会增加内存开销(一次将指定数量的数据取回放在缓存中))。

  • tableWithLargeObjectFetchSize:

    含大对象数据表的游标提取记录数(同上,只是此参数针对有大对象字段的表)。

  • tableWithBigLargeObjectFetchSize:

    大表拆分阈值行数(当表的行数超过此值时,将对表进行拆分,每块的记录数为此值和表总记录数除以“拆分最大块数”中的最大值)。

  • largeTableSplitThresholdRows:

    大表拆分阈值行数(当表的行数超过此值时,将对表进行拆分,每块的记录数为此值和表总记录数除以“拆分最大块数”中的最大值)。

  • largeTableSplitThresholdSize:

    大表拆分阈值大小(单位为M)(当表的数据大小(普通字段+大对象字段)超过此值时,将对表进行拆分)。

  • largeTableSplitMaxChunkNum:

    大表拆分最大块数(每张表的最大拆分块数,应不超过总的读线程数)。

  • largeTableSplitConditionFile:

    大表拆分条件定义文件(优先于按行数和大小拆分)。

  • tableDataFilterConditionFile:

    表数据过滤条件定义文件。

  • useKdms:

    是否使用kdms做转换(视图、函数、存储过程、包、触发器)。

  • kdmsUrl:

    kdms访问地址,前提是useKdms: true

  • writeBatchSize:

    批量提交记录数(行数据)。

  • writeBatchByteSize:

    批量提交数据大小(单位M)。

  • lobInMemoryThresholdSize:

    大对象数据读入内存阈值(单位兆,默认128M)。

  • dropExistingObject:

    删除目标库中已存在的对象(如表、视图等)。

  • truncateTable:

    是否默认清空目标库中已存在的表数据。

  • renameObject:

    目标数据库对象重命名,除表名、列名外的其他对象: pk、fk、constraint、unique constraint、index 等。

  • 线程相关设置

    线程相关设置可根据实际服务器配置按比例调整,如果与目标数据库运行在同一服务器上,应将绝大部分资源分配给数据库。

    进入 KDTS-CLI/conf目录下,参照 thread-config_sample.json 文件新建 thread-config.json 文件,设置线程池配置,如下图所示:

    ../../../_images/pshell-thread.png

    数据迁移属于IO密集型操作,涉及网络络IO和磁盘IO的交互,一旦发生IO,线程就会处于等待状态,当IO结束,数据准备好后,线程才会继续执行。为提升数据迁移的效率可以多设置⼀些线程池中线程的数量,避免任务等待,线程可以去做更多的迁移任务,提高并发处理效率。但不是线程数设置的越高,效率就越高,线程上下文切换是有代价的。 对于IO密集型线程数的设置公式为:线程数 = CPU核心数/(1-阻塞系数) ,其中阻塞系数一般为0.8~0.9之间,取0.9则:

    双核CPU: 2/(1-0.9) = 20

    64核2路CPU: 64*2/(1-0.9) = 1280

  • 启动脚本

    • 进入 KDTS-CLI/bin 目录下,编辑: startup.sh

    • 检查JDK的路径是否正确

      JAVA_PATH=${BASE_PATH}/jdk

    • 启动运行脚本

      进入 KDTS-CLI/bin目录,执行: ./startup.sh

  • 查看迁移报告及问题处理

    可以在运行日志(kdts_plus_***.log)中查看到迁移整个过程的信息,包括任务启动、迁移进程、结果汇总

    可查看result下的迁移结果(在形如“result/2021-12-02_15-15-15/Sehcma1”目录下)

  • index.html--报告主页面

  • detail_XXX.html--XXX详细信息(如表结构、表数据、表主键等)

  • FailedScript--失败脚本目录

  • IgnoredScript--略过脚本目录

  • SuccessScript--成功脚本目录

在迁移过程中一旦某个对象创建失败,KDTS会将该对象的创建sql保留到本次迁移任务文件夹下的FailedScript目录下*.sql文件,用户可以手动修改后通过Ksql或者KStudio工具手动执行。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2205257.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

FTP连接池与多线程FTP上传下载算法(Java)

设计一个能够处理FTP连接池在多线程环境下,尤其是涉及到故障重连时避免竞争条件的算法,需要综合考虑线程同步、连接状态管理和重试机制。以下是一个设计思路和实现方案: 设计思路 连接池管理: 维护一个连接池,其中包含多个FTP连接对象。每个FTP连接对象需有状态标记(如…

Windows系统安装Fooocus结合内网穿透实现公网环境远程生成AI图片

前言 本篇文章将介绍如何在本地Windows11电脑部署开源AI生图软件Fooocus,并结合Cpolar内网穿透工具轻松实现公网环境远程访问与使用。 Fooocus 是一个图像生成软件(基于 Gradio),目前最流行的文生图大模型是 Stable Diffusion&a…

卷积的物理意义

禹晶、肖创柏、廖庆敏《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》P146 一个计算的例子

【python】AI Navigator的使用及搭建本机大模型

使用 大模型下载 随机下载一款大模型用于尝试,作者尝试的是codegemma-7b-it该大模型,具体每一款大模型简单介绍请查看【Anaconda】AI Navigator中大模型简单介绍-CSDN博客 聊天对话 下载完成后点击New Chat即可对话聊天 搭建本机大模型 启动大模型服…

E. Expected Power (Codeforces 976 Div2)

这道题好难 原题 E. Expected Power 提示 Hint 1 试着找 f(S) 的期望值而不是 Hint 2 从f(S)的二进制表示中找规律来求 代码1 对答案代码做了注释 #include <bits/stdc.h> using namespace std;const int mod 1e97, N 2e5 10;// 最高只有1023, 小于等于2的10…

HAL+M4学习记录_5

一、串口 记录使用HAL库开发串口 1.1 简介 USART中文意思是通用同步异步收发器&#xff0c;常用串口是异步串口&#xff0c;简记为UART&#xff0c;是内部集成的硬件外设。使用两根通信线&#xff0c;发送端TX和接收端RX&#xff0c;工作时RX和TX交叉连接。由于计算机的USB接口…

【计算机网络】详谈TCP协议确认应答机制捎带应答机制超时重传机制连接管理机制流量管理机制滑动窗口拥塞控制延迟应答

一、TCP 协议段格式 1.1、4位首部长度 4位首部长度的基本单位是4字节&#xff0c;也就是说如果4位首部长度填6&#xff0c;那报头长度就是24字节。报头长度的取值范围为[0,60]字节&#xff0c;也就是说选项的最大长度为40字节。 二、确认应答机制 发送数据和发送应答&#x…

python爬虫 - 初识正则表达式

&#x1f308;个人主页&#xff1a;https://blog.csdn.net/2401_86688088?typeblog &#x1f525; 系列专栏&#xff1a;https://blog.csdn.net/2401_86688088/category_12797772.html 目录 前言 一、正则表达式 &#xff08;一&#xff09;正则表达式的基本作用 &#xf…

DAY7 继承多态

继承 目的 提高代码的重用性&#xff0c;减少一些重复代码的书写 权限修饰符 就是是用来限制类中的成员&#xff08;成员变量、成员方法、构造器&#xff09;能够被访问的范围。 private 只能本类 缺省 本类、同一个包中的类 protected 本类&#xff0c;同一个包中的类、子…

thenable的执行时机

thenable执行只有2个时机 1.触发resolve()时,代码尚未注册then的内容,那么直到代码扫描到then那一行,才会把then的内容放进队列 2.先注册then,直到后期遇到resolve(),才会进入队列 视频教学 https://www.bilibili.com/video/BV12zsqeMEyt

传智杯 第六届—C

题目描述&#xff1a; 输入两个字符串&#xff0c;从第一字符串中删除第二个字符串中所有的字符。例如&#xff1a;第一个字符串是"They are students."&#xff0c;第二个字符串是”aeiou"。删除之后的第一个字符串变成"Thy r stdnts."。保证两个字符…

仿生水凝胶微纤维:从蜘蛛丝获得灵感,探索高性能纤维材料的新路径

大家好&#xff01;今天咱们来了解一种水凝胶微纤维——《Bioinspired Mechanically Robust and Recyclable Hydrogel Microfibers Based on Hydrogen‐Bond Nanoclusters》发表于《Advanced Science》。研究人员从蜘蛛丝那儿获得灵感&#xff0c;想要做出既机械性能好&#xf…

Spring Cloud 配置中心详解:微服务动态读取与案例示范

在微服务架构中&#xff0c;每个微服务往往都有其独立的配置&#xff0c;这些配置可能会根据环境的不同&#xff08;开发、测试、生产&#xff09;进行调整和变化。Spring Cloud 配置中心提供了一种集中化管理和动态更新微服务配置的解决方案。在本文中&#xff0c;我们将详细介…

详细分析Spring Framework中 @ConditionalOnProperty的基本知识(附Demo)

目录 前言1. 基本知识2. Demo 前言 基本的Java知识推荐阅读&#xff1a; java框架 零基础从入门到精通的学习路线 附开源项目面经等&#xff08;超全&#xff09;【Java项目】实战CRUD的功能整理&#xff08;持续更新&#xff09; 从实战中学习启发 1. 基本知识 Conditiona…

一键将表格嵌入ppt作为附件!2个做ppt必知的技巧分享!

怎样把表格作为附件放入ppt&#xff1f; 众所周知&#xff0c;微软推出的Office套件包含了Powerpoint和Excel这两款软件&#xff0c;如果想在Powerpoint中插入表格&#xff0c;且表格数据量比较大&#xff0c;此时最好的呈现方式&#xff0c;是在Excel中来展示这些数据&#x…

msvcp120.dll无法继续执行代码的五个解决方法

在计算机系统中&#xff0c;MSVCP120.dll是一个至关重要的动态链接库文件&#xff0c;它是Microsoft Visual C Redistributable Package的一部分&#xff0c;对于许多基于Windows的应用程序运行至关重要。当系统提示“msvcp120dll丢失”时&#xff0c;意味着该文件可能由于误删…

清华毕业生去向引发的思考....

近日&#xff0c;清华最新发布的毕业生去向一经公布&#xff0c;便在社会上引起了广泛的关注和热议&#xff0c;许多人看完后都陷入了沉默。这一份去向报告&#xff0c;不仅仅是一组数据的呈现&#xff0c;更是对教育成果、社会需求以及个人发展等多方面问题的深刻映射。 一、数…

文件与目录的基本操作

前提&#xff1a;使用su root 切换到权限最大的root用户 1.显示当前工作目录的绝对路径&#xff08;pwd&#xff09; 用途&#xff1a;用于显示当前工作目录的绝对路径的命令。无论用户在文件系统的哪个位置&#xff0c;pwd 命令都能提供当前所在位置的完整路径信息。 用法&a…

现货白银交易技巧:向下突破回撤策略

有关现货白银交易的技巧一直是投资者关注的重点&#xff0c;投资者确实应该保持学习&#xff0c;这样才能跟得上市场&#xff0c;不会落后&#xff0c;下面我们就来介绍一个现货白银交易中的突破回撤的策略。 首先这个现货白银交易技巧判断的基础就是找到一波横盘趋势。所谓的突…

【C# 网络编程】基本概念

基本概念 OSI模型 背景&#xff1a; 为了统一和兼容不同计算机厂商的网络体系结构概念&#xff0c;国际标准化组织&#xff08;ISO&#xff09;在1979年提出了OSI参考模型&#xff08;Open System Interconnection&#xff0c;&#xff09; 结构 物理层&#xff08;Physica…