最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Oracle數(shù)據(jù)庫(kù)移植到KingbaseES的全流程

 更新時(shí)間:2025年09月30日 08:38:12   作者:鴿芷咕  
在國(guó)產(chǎn)化替代浪潮下,將Oracle數(shù)據(jù)庫(kù)遷移至KingbaseES(金倉(cāng)數(shù)據(jù)庫(kù))已成為眾多企業(yè)的選擇 ,KingbaseES作為Oracle兼容版數(shù)據(jù)庫(kù),通過(guò)原生支持大量Oracle特性,大幅降低了遷移難度,下面我們就來(lái)從Oracle到KingbaseES的完整遷移流程,需要的朋友可以參考下

前言

在國(guó)產(chǎn)化替代浪潮下,將Oracle數(shù)據(jù)庫(kù)遷移至KingbaseES(金倉(cāng)數(shù)據(jù)庫(kù))已成為眾多企業(yè)的選擇 。 KingbaseES作為Oracle兼容版數(shù)據(jù)庫(kù),通過(guò)原生支持大量Oracle特性,大幅降低了遷移難度。下面我們就來(lái)從Oracle到KingbaseES的完整遷移流程,給各位帶來(lái)一份從前期準(zhǔn)備到落地驗(yàn)證的實(shí)戰(zhàn)指南,助力企業(yè)實(shí)現(xiàn)平滑、高效的數(shù)據(jù)庫(kù)國(guó)產(chǎn)化升級(jí)。

一、遷移前必知:為什么選擇KingbaseES?

在啟動(dòng)遷移前,首先要明確KingbaseES的Oracle兼容優(yōu)勢(shì)——這是降低遷移成本的核心前提。根據(jù)官方文檔,KingbaseES在關(guān)鍵層面實(shí)現(xiàn)了高度兼容:

  • 數(shù)據(jù)類型全覆蓋:原生支持Oracle的NUMBER、VARCHAR2、DATE、ROWID等基礎(chǔ)類型,以及RECORD、%TYPE、關(guān)聯(lián)數(shù)組等復(fù)雜PL/SQL類型,無(wú)需修改數(shù)據(jù)結(jié)構(gòu)定義。
  • SQL與PL/SQL兼容:支持TRUNCATE、層次查詢、閃回查詢、MERGE等Oracle特有SQL語(yǔ)句,同時(shí)兼容IF-THEN-ELSE、FORALL、自治事務(wù)等PL/SQL語(yǔ)法,甚至支持DBMS_SQL、DBMS_LOB等常用內(nèi)置包。
  • 工具鏈適配:提供KSQL(類似SQL*PLUS)、KStudio(類似SQL Developer)等客戶端工具,遷移過(guò)程中無(wú)需改變運(yùn)維習(xí)慣。

簡(jiǎn)單來(lái)說(shuō),大部分Oracle應(yīng)用只需“少量修改甚至零修改”,即可在KingbaseES上運(yùn)行——這是選擇它的核心原因。

二、 遷移前準(zhǔn)備

Oracle到KingbaseES的遷移并非“直接拷貝數(shù)據(jù)”,而是遵循“準(zhǔn)備-遷移-測(cè)試”的標(biāo)準(zhǔn)化流程。

2.1 獲取 Oracle 數(shù)據(jù)庫(kù)的相關(guān)信息

遷移前,應(yīng)獲取源數(shù)據(jù)庫(kù)Oracle 服務(wù)名及遷移的數(shù)據(jù)規(guī)模信息。其中,前者用于 PL/SQL Developer 工具的登錄操作,后者用于估算數(shù)據(jù)遷移時(shí)間和設(shè)計(jì)遷移方案。

  1. Oracle 數(shù)據(jù)庫(kù)基本信息
    獲取源Oracle 數(shù)據(jù)庫(kù)的:
    a. IP 地址;
    b. 實(shí)例名;
    c. 網(wǎng)絡(luò)服務(wù)端口號(hào);
    d. 用戶名/密碼。
  • 在目標(biāo)KingbaseES 上:
    a. 創(chuàng)建與源Oracle 用戶(如 scott)同名的用戶(scott);
    b. 創(chuàng)建與源Oracle(如 ORCL)同名的數(shù)據(jù)庫(kù)(ORCL),屬主為scott;
    c. 創(chuàng)建與源Oracle(與用戶名相同 t)同名的模式scott,屬主為 scott。

2.2 查詢Oracle 數(shù)據(jù)庫(kù)編碼方式

select userenv('language') from dual;
 USERENV('LANGUAGE')
 SIMPLIFIED CHINESE_CHINA.ZHS16GBK
【KingbaseES初始化設(shè)置編碼方式】
--encoding=GBK(支持GBKUNICODEASCII)

2.3 看表數(shù)據(jù)量大小

查看當(dāng)前用戶在Oracle中的表大小,按從大到小排序(單位GB)

select segment_name,bytes/1024/1024/1024 fromuser_segmentswheresegment_type='TABLE'order by
 bytesdesc ;
 XFJXX16.046875
 XFRXX7.779296875
 PCK 7.4375
 BLFSXX 5.0625
 XFSXXX 2.3125
 DFGZXX 1.3359375
 FJB 0.53125
 TSJXX0.078125

2.4 檢查數(shù)據(jù)庫(kù)日期格式

時(shí)間的默認(rèn)格式為:ISO,MDY

在配置文件中添加:datestyle=’ISO,YMD’修改為年月日的格式(99會(huì)改為1999)

在某項(xiàng)目中遷移數(shù)據(jù)時(shí)遇到:服務(wù)器報(bào)錯(cuò),遷移工具中斷,遷移停滯

  • oracle數(shù)據(jù)庫(kù)中有日期“0099-09-3000:00:00”,遷移工具輸出為“99-09-3000:00:00”,KingbaseES中將99識(shí)別為月份報(bào)錯(cuò):ERROR:date/timefieldvalueoutofrang
--即使沒有報(bào)錯(cuò)也會(huì)出現(xiàn)錯(cuò)誤
set ora_date_sytle=true;
 CREATE TABLET_DATE(COLDATE);
 INSERT INTO T_DATEVALUES('11-10-1010:10:10');
 SELECT *FROMT_DATE;
 COL--------------------
2010-11-1010:10:10
 (1 row)

三、配置 KingbaseES 的 Oracle 兼容開關(guān)

在 Oracle 數(shù)據(jù)庫(kù)向 KingbaseES 遷移的過(guò)程中,為確保兩者在功能和數(shù)據(jù)存儲(chǔ)上的兼容性,需根據(jù)實(shí)際場(chǎng)景對(duì) KingbaseES 目的數(shù)據(jù)庫(kù)進(jìn)行 Oracle 兼容配置。以下將針對(duì)需重點(diǎn)配置的會(huì)話級(jí)兼容參數(shù)展開說(shuō)明,明確各參數(shù)的作用、配置依據(jù)及注意事項(xiàng)。

3.1 nls_length_semantics 參數(shù)

該參數(shù)的核心作用是設(shè)定char類型字段的默認(rèn)單位(byte或char),同時(shí)標(biāo)識(shí)符的最大長(zhǎng)度也會(huì)以該參數(shù)值為單位 —— 若參數(shù)值為char,標(biāo)識(shí)符最大長(zhǎng)度為 63 個(gè)char;若為byte,則最大長(zhǎng)度為 63 個(gè)byte。

從配置依據(jù)來(lái)看,KingbaseES 中nls_length_semantics參數(shù)的默認(rèn)值為CHAR,但遷移時(shí)需確保其與待遷移的 Oracle 數(shù)據(jù)庫(kù)參數(shù)值保持一致。Oracle 數(shù)據(jù)庫(kù)中,char類型的byte/char屬性默認(rèn)值由NLS_LENGTH_SEMANTICS參數(shù)決定,可通過(guò)如下 SQL 語(yǔ)句查詢?cè)搮?shù)值:

select value from nls_database_parameters where parameter = 'NLS_LENGTH_SEMANTICS';

如果未修改可能會(huì)出現(xiàn):遷移 char 類型時(shí),由于數(shù)據(jù)庫(kù)存儲(chǔ)的類型不同,導(dǎo)致遷移的數(shù)據(jù)存在多余空格的情況。

3.2 default_with_oids:OID 偽列開關(guān)

KingbaseES 的 OID 偽列可兼容 Oracle 的 ROWID 偽列。因此,如果Oracle 移植對(duì)象有 ROWID 偽列,則建議用OID偽列替代。

四、KDTS數(shù)據(jù)的離線遷移實(shí)戰(zhàn)

在完成上述準(zhǔn)備工作以后,我們就可以使用KDTS進(jìn)行數(shù)據(jù)的離線遷移了,KDTS提供了兩種形態(tài)(BS、SHELL),可以根據(jù)需要進(jìn)行選擇,我們?cè)谶@里就給大家介紹BS的oracle遷移的具體步驟。

4.1 創(chuàng)建源數(shù)據(jù)庫(kù)連接

創(chuàng)建源庫(kù)數(shù)據(jù)庫(kù)連接。創(chuàng)建數(shù)據(jù)庫(kù)連接界面如下,填寫數(shù)據(jù)源信息,包括:“連接名稱”、“數(shù)據(jù)庫(kù)
類型”、“數(shù)據(jù)庫(kù)版本”、“服務(wù)器地址”、“端口”、“用戶名”、“密碼”、“數(shù)據(jù)庫(kù)”、“連接參
數(shù)”。

4.2 創(chuàng)建目標(biāo)數(shù)據(jù)庫(kù)連接

創(chuàng)建目標(biāo)數(shù)據(jù)庫(kù)連接。創(chuàng)建數(shù)據(jù)庫(kù)連接界面如下,填寫數(shù)據(jù)源信息,包括:“連接名稱”、“數(shù)據(jù)
庫(kù)類型”、“數(shù)據(jù)庫(kù)版本”、“服務(wù)器地址”、“端口”、“用戶名”、“密碼”、“數(shù)據(jù)庫(kù)”、“驅(qū)
動(dòng)”、“URL”、“連接參數(shù)”。

4.3 新建遷移任務(wù)

KDTS 采用向?qū)ы?yè)的方式指導(dǎo)用戶新建遷移任務(wù),簡(jiǎn)單易用,用戶依次配置“選擇數(shù)據(jù)源”-“選擇模
式”-“選擇遷移對(duì)象”-“配置參數(shù)”,即可快速配置一個(gè)遷移任務(wù)。

  • 選擇數(shù)據(jù)源

填寫自定義任務(wù)名稱(任務(wù)名稱不能重復(fù)),選擇“源數(shù)據(jù)庫(kù)”和“目標(biāo)數(shù)據(jù)庫(kù)”,或者選擇“新建數(shù)據(jù)源”后使用

4.4 選擇模式

根據(jù)我們的數(shù)據(jù)遷移所需選擇對(duì)應(yīng)模式(如需選擇模式在系統(tǒng)模式中可選中“包含系統(tǒng)模式”復(fù)選
框)的表、視圖、序列、函數(shù)、存儲(chǔ)過(guò)程、程序包、同義詞。當(dāng)模式較多時(shí)也可以通過(guò)左上方的查
詢框進(jìn)行檢索。請(qǐng)您至少選擇一種模式,否則將收到錯(cuò)誤提示,以至于不能完成新建任務(wù)。

4.5 選擇遷移對(duì)象

通過(guò)已選模式選擇我們需要遷移數(shù)據(jù)的表,模式較多時(shí)可在已選模式搜索框內(nèi)輸入模式名關(guān)鍵字進(jìn)行快速檢索。

可遷移此模式下全部表,也可以指定或排除部份表,當(dāng)你選擇“包含指定表”或“排除指定表”
時(shí),請(qǐng)通過(guò)“從列表選擇”、“從文件導(dǎo)入”或者在輸入框內(nèi)輸入表名將數(shù)據(jù)添加到包含列表
中,如未添加數(shù)據(jù),則會(huì)提示錯(cuò)誤導(dǎo)致無(wú)法進(jìn)行下一步并完成新建任務(wù)。

當(dāng)我們點(diǎn)擊“包含指定表”時(shí)也可選擇多種方式??芍苯釉谳斎肟騼?nèi)填寫表名,多個(gè)表用“,”分割,回車確認(rèn);“從列表選擇”可在模式中選擇指定表;如您要“從文件導(dǎo)入”,可點(diǎn)擊“下載導(dǎo)入模板”,根據(jù)導(dǎo)入模板規(guī)則填寫,然后從文件導(dǎo)入該模板。當(dāng)您需要“排除指定表”時(shí),同指定部份表相同操作,但結(jié)果相反。

從列表選擇表時(shí),可選擇對(duì)應(yīng)模式、檢索表名關(guān)鍵字、數(shù)據(jù)條數(shù)限制進(jìn)行快速檢索對(duì)應(yīng)的表。點(diǎn)擊
“添加”按鈕后加入到已選列表,當(dāng)您想要移除部份表時(shí)可以選擇對(duì)應(yīng)的表點(diǎn)擊“移除”按鈕取消
表。選擇完成后點(diǎn)擊確定。

4.6 配置參數(shù)

遷移工具給我們提供了一系列配置參數(shù)用于遷移方案的個(gè)性化配置,滿足多種遷移場(chǎng)景。配置參數(shù)分為“遷移配置”、“數(shù)據(jù)類型映射”、“線程配置”三個(gè)方面。

  • 表默認(rèn)處理方式
    包含“建表/重建表”“導(dǎo)入數(shù)據(jù)”兩個(gè)復(fù)選框選項(xiàng),用于選擇遷移到KingBaseES數(shù)據(jù)庫(kù)時(shí),是否需要建表或重建表,以及是否僅遷移表結(jié)構(gòu)而不遷移數(shù)據(jù)。默認(rèn)是全選。
  • 表排序依據(jù)
    可對(duì)遷移的表進(jìn)行排序,排序方式有“按行數(shù)和大字段大小交替”“行數(shù)”“大小”,默認(rèn)是按行數(shù)和大字段大小交替。
  • 表數(shù)據(jù)讀取和寫入
    能為表數(shù)據(jù)的讀取和寫入制定規(guī)則,可操作的選項(xiàng)有“源庫(kù)游標(biāo)讀取記錄數(shù)”(默認(rèn)是100)、“批量寫入目標(biāo)庫(kù)記錄數(shù)”(默認(rèn)是1000)、“每次批量提交大小”(默認(rèn)是100MB)、“LOB字段預(yù)讀取大小”(默認(rèn)是4000Byte)。
  • 大表拆分閾值依據(jù)
    用于對(duì)大表進(jìn)行拆分遷移,可設(shè)置拆分的界限。
  • 非對(duì)象設(shè)置
    其中有“主鍵”“檢查約束”“唯一約束”“外鍵”“索引”“觸發(fā)器”“自動(dòng)轉(zhuǎn)換對(duì)象名”等選項(xiàng),可根據(jù)需求選擇是否遷移這些非對(duì)象數(shù)據(jù),默認(rèn)是全選。
  • 數(shù)據(jù)庫(kù)連接數(shù)設(shè)置
    可以限制遷移程序?qū)υ磾?shù)據(jù)庫(kù)和目標(biāo)數(shù)據(jù)庫(kù)的最大連接數(shù),默認(rèn)是100。
  • 執(zhí)行遷移任務(wù)
    可將此任務(wù)作為預(yù)遷移任務(wù)點(diǎn)擊“保存”,或者作為執(zhí)行任務(wù)點(diǎn)擊“保存并遷移”。
  • 遷移完成
    遷移結(jié)束“狀態(tài)”欄顯示“成功”,則遷移任務(wù)成功。
  • 遷移失敗
    遷移結(jié)束“狀態(tài)”欄顯示“失敗”,則遷移任務(wù)失敗。失敗后可點(diǎn)擊詳情查看日志有助于解決問(wèn)題。

五、查看遷移報(bào)告及問(wèn)題處理

遷移完成后,我們需要確認(rèn)執(zhí)行結(jié)果,包括遷移數(shù)據(jù)量,是否有錯(cuò)誤發(fā)生,可以通過(guò)遷移日志和遷移結(jié)果進(jìn)行查看。

  • “遷移日志”打印遷移任務(wù)執(zhí)行后的日志,具體可分為“系統(tǒng)日志”、“Error日志”、“Info日志”。
  • “遷移結(jié)果”功能的工作區(qū)包括“任務(wù)執(zhí)行批次”、“遷移對(duì)象”、“總數(shù)”、“成功數(shù)”、“失敗數(shù)”、“略過(guò)數(shù)”、“操作”。您可以查看歷史遷移任務(wù)執(zhí)行的每次記錄,以及每次遷移的對(duì)象、成功數(shù)、失敗數(shù)、查看失敗任務(wù)的錯(cuò)誤日志。

結(jié)語(yǔ)

從 Oracle 到 KingbaseES 的遷移,不僅是技術(shù)層面的替換,更是企業(yè)國(guó)產(chǎn)化轉(zhuǎn)型的重要一步。在遷移過(guò)程中我們最好按照一下步驟,遵循標(biāo)準(zhǔn)化流程、利用兼容優(yōu)勢(shì)、做好測(cè)試調(diào)優(yōu),即可實(shí)現(xiàn) “平穩(wěn)遷移、無(wú)縫銜接”。

  • 提前評(píng)估:摸清 Oracle 源庫(kù)的對(duì)象和不兼容點(diǎn),避免遷移中 “踩坑”;
  • 工具優(yōu)先:善用 KDTS/KFS 等官方工具,減少手動(dòng)操作,提升效率;
  • 充分測(cè)試:功能和性能測(cè)試必須覆蓋所有業(yè)務(wù)場(chǎng)景,確保上線后穩(wěn)定運(yùn)行。

以上就是Oracle數(shù)據(jù)庫(kù)移植到KingbaseES的全流程的詳細(xì)內(nèi)容,更多關(guān)于Oracle移植到KingbaseES的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 一文解決ORA-01034:?ORACLE?not?available報(bào)錯(cuò)

    一文解決ORA-01034:?ORACLE?not?available報(bào)錯(cuò)

    這篇文章主要給大家介紹了關(guān)于ORA-01034:?ORACLE?not?available報(bào)錯(cuò)解決的相關(guān)資料,這是oracle數(shù)據(jù)庫(kù)啟動(dòng)經(jīng)常會(huì)遇到的問(wèn)題,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • Oracle修改seuqnce當(dāng)前值的三種方法

    Oracle修改seuqnce當(dāng)前值的三種方法

    本文介紹了三種調(diào)整Oracle數(shù)據(jù)庫(kù)序列當(dāng)前值的方法,增加、減少序列當(dāng)前值;直接使用SQL調(diào)整序列當(dāng)前值;以及刪除并重建序列,還討論了序列越界的問(wèn)題及其解決方法,以及不能修改序列初始值的注意事項(xiàng),感興趣的朋友跟隨小編一起看看吧
    2026-03-03
  • Oracle設(shè)置時(shí)區(qū)和系統(tǒng)時(shí)間的多種實(shí)現(xiàn)方法

    Oracle設(shè)置時(shí)區(qū)和系統(tǒng)時(shí)間的多種實(shí)現(xiàn)方法

    在Oracle數(shù)據(jù)庫(kù)中,設(shè)置時(shí)區(qū)和系統(tǒng)時(shí)間可以通過(guò)多種方法實(shí)現(xiàn),本文通過(guò)代碼示例給大家介紹了Oracle設(shè)置時(shí)區(qū)和系統(tǒng)時(shí)間的多種實(shí)現(xiàn)方法,需要的朋友可以參考下
    2024-02-02
  • oracle使用adrci清理日志文件的操作指南(trace文件,incident文件,listener log文件)

    oracle使用adrci清理日志文件的操作指南(trace文件,incident文件,listener lo

    oracle中通常有好多日志文件,遇到異常情況會(huì)產(chǎn)生大量日志,造成磁盤空間緊張,故需要清理對(duì)應(yīng)文件,包括trace文件,incident文件,listener log文件等,所以本文給大家介紹了oracle使用adrci清理日志文件的操作指南,需要的朋友可以參考下
    2024-05-05
  • Oracle Portal及其門戶網(wǎng)站開發(fā)概述

    Oracle Portal及其門戶網(wǎng)站開發(fā)概述

    Oracle Portal及其門戶網(wǎng)站開發(fā)概述...
    2007-03-03
  • Oracle中V$LOCK 視圖的使用小結(jié)

    Oracle中V$LOCK 視圖的使用小結(jié)

    V$LOCK是Oracle關(guān)鍵動(dòng)態(tài)視圖,用于診斷事務(wù)、表級(jí)及系統(tǒng)級(jí)鎖沖突,結(jié)合其他視圖分析阻塞與死鎖問(wèn)題,本文就來(lái)介紹一下Oracle V$LOCK 視圖的使用,感興趣的可以了解一下
    2025-06-06
  • 深入oracle分區(qū)索引的詳解

    深入oracle分區(qū)索引的詳解

    本篇文章是對(duì)oracle分區(qū)索引進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • Oracle數(shù)據(jù)泵(Data Dump)使用過(guò)程當(dāng)中經(jīng)常會(huì)遇到一些奇奇怪怪的錯(cuò)誤案例

    Oracle數(shù)據(jù)泵(Data Dump)使用過(guò)程當(dāng)中經(jīng)常會(huì)遇到一些奇奇怪怪的錯(cuò)誤案例

    從oracledatabase 10g開始引入了data pump(數(shù)據(jù)泵)工具,它提供了一種基于服務(wù)器的數(shù)據(jù)導(dǎo)出導(dǎo)入使用程序。 所有的data pump都作為一個(gè)服務(wù)器進(jìn)程,數(shù)據(jù)不再必須由一個(gè)客戶程序處理。Data Pump工具的導(dǎo)出和導(dǎo)入實(shí)現(xiàn)Oracle數(shù)據(jù)庫(kù)之間數(shù)據(jù)的傳輸。
    2014-09-09
  • Oracle以逗號(hào)分隔的字符串拆分為多行數(shù)據(jù)實(shí)例詳解

    Oracle以逗號(hào)分隔的字符串拆分為多行數(shù)據(jù)實(shí)例詳解

    做多選功能時(shí)為了簡(jiǎn)便,會(huì)在某個(gè)字段中存儲(chǔ)多個(gè)值,保存時(shí)雖然省事,但后續(xù)的查詢統(tǒng)計(jì)時(shí)還需要拆分?jǐn)?shù)據(jù)才行,因此這時(shí)需要將字段內(nèi)的值分成多行以便后續(xù)使用,這篇文章主要給大家介紹了關(guān)于Oracle以逗號(hào)分隔的字符串拆分為多行數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下
    2021-07-07
  • Linux 自動(dòng)備份oracle數(shù)據(jù)庫(kù)詳解

    Linux 自動(dòng)備份oracle數(shù)據(jù)庫(kù)詳解

    這篇文章主要介紹了Linux 自動(dòng)備份oracle數(shù)據(jù)庫(kù)詳解方法的相關(guān)資料,數(shù)據(jù)庫(kù)的備份的重要性,不言而喻,希望能幫到大家,需要的朋友可以參考下
    2016-10-10

最新評(píng)論

东方市| 托克托县| 应用必备| 尖扎县| 柞水县| 界首市| 青铜峡市| 潢川县| 嘉禾县| 忻州市| 平山县| 兴城市| 山阴县| 内丘县| 吴江市| 印江| 太仆寺旗| 上饶市| 龙岩市| 柏乡县| 丽江市| 青河县| 双流县| 大安市| 普安县| 新泰市| 南郑县| 阿拉善左旗| 枣强县| 韶山市| 元氏县| 界首市| 桃江县| 喀喇沁旗| 成武县| 博白县| 且末县| 陆丰市| 抚远县| 平原县| 花莲市|