简单几个步骤完成 Oracle 到金仓数据库(KingbaseES)的迁移目标
作为国产数据库的领军选手,金仓数据库(KingbaseES)凭借其成熟的技术架构和广泛的市场覆盖,在国内众多领域中扮演着至关重要的角色。无论是国家电网、金融行业,还是铁路、医疗等关键领域,金仓数据库都以其卓越的稳定性和可靠性赢得了广泛认可。
在当前国家大力推进信息技术应用创新(信创)的大背景下,许多企业选择将其数据库系统迁移至国产数据库,而金仓数据库则是国产数据库队伍中的“香饽饽”。除了可以实现国家层面的自主可控,还能降低企业在数据库上的支出。
由于金仓提供可插拔异构数据库原生兼容框架,实现了对 Oracle 的全面兼容,极大减少了应用程序的修改量,因此当前比较普遍的迁移链路都是从 Oracle 迁移过来的。但是由于迁移过程包含了数据的提取、转换、加载(ETL)过程,并且需要保证业务的平稳割接,因此迁移并没有想象中的简单。
NineData 提供了一套完整的数据库迁移解决方案,专门用于解决此类问题。NineData 的优势在于其能够针对不同数据库架构的差异进行精准的映射与转 换,同时还可以对业务的增量数据进行实时的迁移,确保丝滑完成数据库国产化迁移过程,减少停机时间,保证业务不中断。
NineData 数据复制简介
NineData 数据复制功能由玖章算术公司推出,支持多种支持跨数据库的全量与增量数据同步,在提供高效、稳定的数据流动体验的同时,确保迁移过程中的数据一致性,降低迁移的技术门槛和风险。
在目标为金仓数据库的迁移同步场景下,NineData 提供如下能力:
-
快速启动,无需开发:NineData 内置 Oracle 到金仓数据库的深度集成,全程可视化操作,鼠标点击即可轻松完成任务配置,无需了解数据迁移的技术细节,更无需二次开发。
-
高效的 CDC 能力:NineData 能实时捕获数据库的变更数据(CDC),将其转换为金仓数据库的格式并实时加载到数据库中,支持毫秒级延迟,满足实时性要求。
-
稳定可靠的容错机制:自动检测同步链路的异常状况,支持断点续传和重试机制,即使面对网络抖动,也能保证任务稳定运行,确保数据一致性。
-
全面的监控与告警:提供实时的任务监控面板,用户可直观查看数据同步状态、延迟、数据量等关键指标,同时支持异常告警通知,方便快速定位和解决问题。
三分钟完成迁移配置
步骤一:将 Oracle 和金仓数据源录入到 NineData 平台
1. 登录 NineData 控制台,单击数据源管理>数据源,然后在页面中单击创建数据源,选择需要录入的数据源。
2. 根据页面提示进行配置,然后单击创建数据源完成创建。
步骤二:配置同步链路
1. 登录 NineData 控制台,单击数据复制>数据复制,然后单击创建复制。
添加图片注释,不超过 140 字(可选)
2. 根据页面提示配置复制任务,由于我们想要实现实时业务的无缝割接,需要在复制类型处额外勾选增量复制。
添加
3. 配置完成后启动任务,针对你配置的所有同步对象,NineData 会先对所有的存量数据进行全量迁移,接下来就是实时迁移源端中新增的增量数据,所有新写入的数据都将一条不漏地迁移至 Kingbase,每当源端的增量数据已经全部写入 Kingbase,并且没有新的增量数据时,任务面板中的延迟将显示为 0 秒,代表当前 Kingbase 中的数据是最新的。
步骤三(可选):校验目标端同步数据的完整性
除了同步功能以外,NineData 还提供了同步后源端和目标端同步数据的对比功能,以确保目标端数据的完整性。
1. 登录 NineData 控制台,单击数据复制>数据复制,然后单击步骤二中创建的复制任务。
2. 单击数据对比页签,即可展示对比结果(如果步骤二的任务配置中未勾选开启数据一致性对比,则此处还需要单击开启数据对比)。
3. NineData 支持对增量的实时数据进行对比,这是一条跟随任务长期运行的对比链路,将实时对比源端中同步过来的增量数据。
步骤四(可选):配置任务异常告警
在迁移过程中,可能需要系统实时监控任务状态,在任务有异常时即刻通知你。
1. 登录 NineData 控制台,单击数据复制>数据复制,然后单击复制任务名称。
2. 单击右上角的配置告警。
3. 输入策略名称,选择告警规则,单击保存配置即可。你可以直接使用内置的默认规则,在任务运行失败,或复制延迟大于等于 10 分钟的时候,发送短信提醒你。你也可以自定义创建规则,根据你的需求来进行通知。
至此,你已经完成了国产化配置的所有步骤,业务数据将源源不断地从源库流入 Kingbase,当增量复制的延迟为 0 时,即可在您觉得合适的时间执行业务割接,割接完成后,数据库的国产化替代就已经顺利完成了。
总结
NineData 帮助企业在不影响业务的情况下完成 Oracle 数据库到金仓数据库(KingbaseES)的迁移,并且保证平滑的业务割接,轻松实现数据库国产化目标。
此外,NineData 针对不同规模的企业提供灵活的定价策略,中小企业用户在数据量较小的情况下可以免费使用其核心迁移功能,这大大降低了国产化的门槛。通过其强大的可视化操作界面和一站式数据同步解决方案,NineData 让企业无需掌握复杂的技术细节便能完成数据迁移。
同时,NineData 还在不断优化其产品性能和服务体系,例如提供更多数据库类型的支持、更精细的迁移配置选项,以及全天候技术支持,确保用户在迁移过程中得到最佳体验。
相关文章:

简单几个步骤完成 Oracle 到金仓数据库(KingbaseES)的迁移目标
作为国产数据库的领军选手,金仓数据库(KingbaseES)凭借其成熟的技术架构和广泛的市场覆盖,在国内众多领域中扮演着至关重要的角色。无论是国家电网、金融行业,还是铁路、医疗等关键领域,金仓数据库都以其卓…...

DeepSeek自动化写作软件
DeepSeek写作软件的三大核心功能 对于内容创作者来说,写作不仅是表达思想的过程,更是一项需要投入大量时间和精力的任务。面对日益增长的内容需求,写作效率低下、内容质量不高等问题,常常让创作者感到焦虑。而 DeepSeek 写作软件…...
【kafka系列】Kafka如何实现高吞吐量?
目录 1. 生产者端优化 核心机制: 关键参数: 2. Broker端优化 核心机制: 关键源码逻辑: 3. 消费者端优化 核心机制: 关键参数: 全链路优化流程 吞吐量瓶颈与调优 总结 Kafka的高吞吐能力源于其生…...
learn_pytorch03
第三章 深度学习分为如下几个步骤 1:数据预处理,划分训练集和测试集 2:选择模型,设定损失函数和优化函数 3:用模型取拟合训练数据,并在验证计算模型上表现。 接着学习了一些数据读入 模型构建 损失函数的构…...

机器学习:k近邻
所有代码和文档均在golitter/Decoding-ML-Top10: 使用 Python 优雅地实现机器学习十大经典算法。 (github.com),欢迎查看。 K 邻近算法(K-Nearest Neighbors,简称 KNN)是一种经典的机器学习算法,主要用于分类和回归任务…...
redis之lua实现原理
文章目录 创建并修改Lua环境Lua环境协作组件伪客户端lua scripts字典 EVAL命令的实现定义脚本函数执行脚本函数 EVALSHA命令的实现脚本管理命令的实现SCRIPT FLUSHSCRIPTEXISTSSCRIPT LOADSCRIPT KILL 脚本复制复制 EVAL命令、SCRIPT FLUSH命令和SCRIPT LOAD命令* 复制EVALSHA命…...

[Android] 【汽车OBD软件】Torque Pro (OBD 2 Car)
[Android] 【汽车OBD软件】Torque Pro (OBD 2 & Car) 链接:https://pan.xunlei.com/s/VOIyKOKHBR-2XTUy6oy9A91yA1?pwdm5jm# 获取 OBD 故障代码、汽车性能数据等等。Torque 使用连接到您的 OBD2 发动机管理/ECU 的 OBD II 蓝牙适配器。…...
安全问答—安全的基本架构
前言 将一些安全相关的问答进行整理汇总和陈述,形成一些以问答呈现的东西,加入一些自己的理解,欢迎路过的各位大佬进行讨论和论述。很多内容都会从甲方的安全认知去进行阐述。 1.安全存在的目的? 为了支持组织的目标、使命和宗…...
Java 运行时常量池笔记(详细版
📚 Java 运行时常量池笔记(详细版) Java 的运行时常量池(Runtime Constant Pool)是 JVM 方法区的一部分,用于存储编译期生成的字面量和符号引用。它是 Java 类文件常量池的运行时表示,具有动态…...
mysql增加字段操作以及关键字报错
修改mysql DDL语言 修改代码中domain 修改mapper中信息 java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near index, date, scroll_id, shard_ser…...

Wireshark 输出 数据包列表本身的值
在 Wireshark 中,如果你想输出数据包列表本身的值(例如,将数据包的摘要信息、时间戳、源地址、目的地址等导出为文本格式),可以使用 导出为纯文本文件 的功能。以下是详细步骤: 步骤 1:打开 Wir…...

日常开发中,使用JSON.stringify来实现深拷贝的坑
使用JSON.stringify的方式来实现深拷贝的弊端 弊端一:无法拷贝NaN、Infinity、undefined这类值 无法拷贝成功的原因: 对于JSON来说,它支持的数据类型只有null、string、number、boolean、Object、Array,所以对于它不支持的数据类…...
【探商宝】:大数据与AI赋能,助力中小企业精准拓客引
引言:在数据洪流中,如何精准锁定商机? 在竞争激烈的商业环境中,中小企业如何从海量信息中快速筛选出高价值客户?如何避免无效沟通,精准触达目标企业? 探商宝——一款基于大数据与AI技术的企业信…...

Javascript网页设计案例:通过PDF.js实现一款PDF阅读器,包括预览、页面旋转、页面切换、放大缩小、黑夜模式等功能
前言 目前功能包括: 切换到首页。切换到尾页。上一页。下一页。添加标签。标签管理页面旋转页面随意拖动双击后还原位置 其实按照自己的预期来说,有很多功能还没有开发完,配色也没有全都搞完,先发出来吧,后期有需要…...
各类系统Pycharm安装教程
各类系统Pycharm安装教程 一、安装前的准备 1. 系统要求 操作系统: Windows:Windows 10 或更高版本(64位)。macOS:macOS 10.14 或更高版本。Linux:Ubuntu 18.04+、Fedora 30+ 等主流发行版。硬件要求: 内存:至少 4GB(推荐 8GB 以上)。磁盘空间:至少 2.5GB 可用空间…...

哈希表(C语言版)
文章目录 哈希表原理实现(无自动扩容功能)代码运行结果 分析应用 哈希表 如何统计一段文本中,小写字母出现的次数? 显然,我们可以用数组 int table[26] 来存储每个小写字母出现的次数,而且这样处理,效率奇高。假如我们想知道字…...

内容中台驱动企业数字化内容管理高效协同架构
内容概要 在数字化转型加速的背景下,企业对内容管理的需求从单一存储向全链路协同演进。内容中台作为核心支撑架构,通过统一的内容资源池与智能化管理工具,重塑了内容生产、存储、分发及迭代的流程。其核心价值在于打破部门壁垒,…...

LLaMA-Factory DeepSeek-R1 模型 微调基础教程
LLaMA-Factory 模型 微调基础教程 LLaMA-FactoryLLaMA-Factory 下载 AnacondaAnaconda 环境创建软硬件依赖 详情LLaMA-Factory 依赖安装CUDA 安装量化 BitsAndBytes 安装可视化微调启动 数据集准备所需工具下载使用教程所需数据合并数据集预处理 DeepSeek-R1 可视化微调数据集处…...
vue 文件下载(导出)excel的方法
目前有一个到处功能的需求,这是我用过DeepSeek生成的导出(下载)excel的一个方法。 1.excel的文件名是后端生成的,放在了响应头那里。 2.这里也可以自己制定文件名。 3.axios用的是原生的axios,不要用处理过的ÿ…...

【第4章:循环神经网络(RNN)与长短时记忆网络(LSTM)— 4.3 RNN与LSTM在自然语言处理中的应用案例】
咱今天来聊聊在人工智能领域里,特别重要的两个神经网络:循环神经网络(RNN)和长短时记忆网络(LSTM),主要讲讲它们在自然语言处理里的应用。你想想,平常咱们用手机和别人聊天、看新闻、听语音助手说话,背后说不定就有 RNN 和 LSTM 在帮忙呢! 二、RNN 是什么? (一)…...

Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...

【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

cf2117E
原题链接:https://codeforces.com/contest/2117/problem/E 题目背景: 给定两个数组a,b,可以执行多次以下操作:选择 i (1 < i < n - 1),并设置 或,也可以在执行上述操作前执行一次删除任意 和 。求…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
日常一水C
多态 言简意赅:就是一个对象面对同一事件时做出的不同反应 而之前的继承中说过,当子类和父类的函数名相同时,会隐藏父类的同名函数转而调用子类的同名函数,如果要调用父类的同名函数,那么就需要对父类进行引用&#…...
深入浅出Diffusion模型:从原理到实践的全方位教程
I. 引言:生成式AI的黎明 – Diffusion模型是什么? 近年来,生成式人工智能(Generative AI)领域取得了爆炸性的进展,模型能够根据简单的文本提示创作出逼真的图像、连贯的文本,乃至更多令人惊叹的…...
前端调试HTTP状态码
1xx(信息类状态码) 这类状态码表示临时响应,需要客户端继续处理请求。 100 Continue 服务器已收到请求的初始部分,客户端应继续发送剩余部分。 2xx(成功类状态码) 表示请求已成功被服务器接收、理解并处…...
React父子组件通信:Props怎么用?如何从父组件向子组件传递数据?
系列回顾: 在上一篇《React核心概念:State是什么?》中,我们学习了如何使用useState让一个组件拥有自己的内部数据(State),并通过一个计数器案例,实现了组件的自我更新。这很棒&#…...