[發明專利]數據庫同步中基于閃回查詢的初始化裝載方法及設備有效
| 申請號: | 201910360528.2 | 申請日: | 2019-04-30 |
| 公開(公告)號: | CN110232093B | 公開(公告)日: | 2021-04-13 |
| 發明(設計)人: | 付銓;孫峰;余院蘭;趙家威 | 申請(專利權)人: | 武漢達夢數據庫有限公司 |
| 主分類號: | G06F16/27 | 分類號: | G06F16/27;G06F16/25 |
| 代理公司: | 武漢智嘉聯合知識產權代理事務所(普通合伙) 42231 | 代理人: | 黃君軍 |
| 地址: | 430000 湖北省武漢市東湖新技術開*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據庫 同步 基于 查詢 初始化 裝載 方法 設備 | ||
本發明實施例提供了一種數據庫同步中基于閃回查詢的初始化裝載方法及設備。所述方法包括:獲取源端數據庫當前日志的第一最終SCN,若當前活動事務中存在與系統表相關的活動事務,且相關的活動事務的起始SCN小于第一最終SCN,則將相關的活動事務提交完畢;獲取第二最終SCN,將第二最終SCN送至目標端數據同步服務,將第二最終SCN與待裝載表進行關聯,根據第二最終SCN,閃回查詢待裝載表在第二最終SCN處的數據鏡像,并送至目標端數據同步服務,對數據鏡像進行同步,并將待裝載表在日志流中捕獲的操作,發送至目標端數據同步服務;若操作的SCN大于第二最終SCN,則同步待裝載表。本發明可以保證源端和目標端數據庫的一致性,以及源端數據庫應用的穩定性。
技術領域
本發明實施例涉及數據庫同步技術領域,尤其涉及一種數據庫同步中基于閃回查詢的初始化裝載方法及設備。
背景技術
在數據庫數據實時同步技術中,其中基于數據庫日志分析的數據實時同步技術因其具備支持異構操作系統和數據庫平臺、對源端數據庫系統侵入性較小、數據同步延時低等特點,而得到廣泛應用。基于日志分析的數據實時同步技術,一般是捕獲源端數據庫的增量日志內容,然后通過網絡發送至目標端,在目標端使用SQL逆向生成技術恢復源端數據庫的事務操作SQL語句,再通過通用的數據庫訪問接口如ODBC、OCI等接口,執行恢復后的SQL語句,實現源端和目標端的數據實時同步。
通過上述數據實時同步技術實現數據庫數據實時同步包括:實時讀取源端數據庫日志文件,捕獲源端數據庫上的事務增量日志內容;實時解析增量日志內容,提取日志中的事務ID、操作表ID、事務的操作類型如INSERT、UPDATE、DELETE,事務操作時間戳、日志LSN值、操作數據等,然后將其組裝成特定格式的消息,存放在發送隊列中;最后發送隊列中的消息通過TCP/IP網絡發送至同步系統的目標端。
在進行數據庫數據實時同步時,首先需要對目標數據庫進行數據初始化操作,來獲得數據同步的基礎點。在完成數據初始化操作之后,即可在此基礎數據之上進行實時增量數據同步。在現實數據庫應用中,源端數據庫中可能存在很多應用,這些應用會分分秒秒的對數據庫進行修改操作,還有一些應用的事務時間跨度非常的長(即長事務),往往一個事務要持續幾個小時。在這種場景下,實現源端數據庫到目標端數據庫的數據初始化時需要對源端數據庫上待裝載的表上S鎖,從而獲得一份干凈的數據。但是對源表上S鎖則會影響到源端的數據庫應用,導致應用無法對表進行修改操作,并且,在待裝載表被長事務占用時,會導致裝載的連接在短時間內無法獲取該表的S鎖,導致延長裝載花費的時間。因此,找到一種可以在避免對待裝載表上S鎖的前提下,保證源端數據庫和目標端數據庫的一致性,以及源端數據庫應用的穩定性的方法,就成為業界亟待解決的技術問題。
發明內容
針對現有技術存在的上述問題,本發明實施例提供了一種數據庫同步中基于閃回查詢的初始化裝載方法及設備。
第一方面,本發明的實施例提供了一種數據庫同步中基于閃回查詢的初始化裝載方法,包括:獲取源端數據庫當前日志的第一最終SCN,查詢所述源端數據庫的系統表,若當前活動事務中存在與所述系統表相關的活動事務,且所述相關的活動事務的起始SCN小于所述第一最終SCN,則將所述相關的活動事務提交完畢;獲取源端數據庫當前日志的第二最終SCN,將所述第二最終SCN發送至目標端數據同步服務,目標端數據同步服務將所述第二最終SCN與待裝載表進行關聯,根據所述第二最終SCN,閃回查詢所述待裝載表在所述第二最終SCN處的數據鏡像,并將獲取的數據鏡像發送至所述目標端數據同步服務,對所述數據鏡像進行同步,并將所述待裝載表在日志流中捕獲的操作,發送至所述目標端數據同步服務;若所述待裝載表在日志流中捕獲的操作的SCN,大于所述第二最終SCN,則同步所述待裝載表。
進一步地,在上述方法實施例內容的基礎上,本發明實施例中提供的數據庫同步中基于閃回查詢的初始化裝載方法,所述系統表,包括:V$TRANSACTION和/或V$LOCKED_OBJECT。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于武漢達夢數據庫有限公司,未經武漢達夢數據庫有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910360528.2/2.html,轉載請聲明來源鉆瓜專利網。





