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

通過LogMiner實現(xiàn)Oracle數(shù)據(jù)庫同步遷移

 更新時間:2021年09月07日 10:12:03   作者:冰 河  
為了實現(xiàn)Oracle數(shù)據(jù)庫之間的數(shù)據(jù)同步,網(wǎng)上的資料比較少的時候。最好用的Oracle數(shù)據(jù)庫同步工具是:GoldenGate ,而GoldenGate是要收費的。這個時候就可以使用LogMiner來實現(xiàn)Oracle數(shù)據(jù)同步遷移,下面文章內(nèi)容將給大家介紹其實現(xiàn)方法

通過LogMiner實現(xiàn)Oracle數(shù)據(jù)同步遷移

為了實現(xiàn)Oracle數(shù)據(jù)庫之間的數(shù)據(jù)同步,網(wǎng)上的資料比較少的時候。最好用的Oracle數(shù)據(jù)庫同步工具是:GoldenGate ,而GoldenGate是要收費的。那么還有什么好的辦法來同步Oracle的數(shù)據(jù)嗎?沒錯,就是使用LogMiner來實現(xiàn)Oracle數(shù)據(jù)同步遷移。

一、實現(xiàn)過程

1.創(chuàng)建目錄

在服務(wù)器上創(chuàng)建/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR目錄來存儲數(shù)據(jù)庫的字典信息,如下所示。

mkdir -p /home/oracle/tools/oracle11g/oradata/orcl/LOGMNR

2.配置LogMiner

以oracle用戶身份登錄服務(wù)器,并以DBA身份登錄Oracle數(shù)據(jù)庫,如下所示。

sqlplus /nolog
conn  / as sysdba

接下來,創(chuàng)建字典文件夾配置,如下所示。

CREATE DIRECTORY utlfile AS '/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR';
alter system set utl_file_dir='/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR' scope=spfile;  

注意:由于utl_file_dir只存在于文件當(dāng)中,所以scope是以文件方式"spfile"寫入,而不是both。

3.開啟日志追加模式

alter database add supplemental log data;  

只有開啟后才能看到DML操作記錄,否則只能看見DML

4.重啟數(shù)據(jù)庫

SHUTDOWN IMMEDIATE;  
STARTUP; 

5.創(chuàng)建數(shù)據(jù)同步用戶

創(chuàng)建數(shù)據(jù)同步用戶,如果已經(jīng)有可以跳過,直接賦予權(quán)限。

create user SYNC identified by SYNC;  #如果存在用戶,則不需要再次創(chuàng)建,直接授權(quán)即可
GRANT CONNECT,RESOURCE,DBA,EXECUTE_CATALOG_ROLE TO SYNC;  

6.創(chuàng)建數(shù)據(jù)字典

切換到要同步數(shù)據(jù)的用戶,以DBA身份登錄,創(chuàng)建數(shù)據(jù)字典文件,如下所示。

conn SYNC/SYNC@orcl as sysdba;  
EXECUTE dbms_logmnr_d.build(dictionary_filename => 'dictionary.ora', dictionary_location =>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR');  

創(chuàng)建數(shù)據(jù)字典的命令也可以通過Java代碼來實現(xiàn),如果使用Java代碼實現(xiàn)的話,首先可以通過JDBC連接到Oracle數(shù)據(jù)庫,然后執(zhí)行如下命令。

BEGIN
dbms_logmnr_d.build(dictionary_filename => 'dictionary.ora', dictionary_location =>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR');  
END;

7.加入需要分析的日志文件

此步驟可以在Oracle命令行執(zhí)行,也可以使用Java代碼實現(xiàn)。

使用SQL語句實現(xiàn)如下所示。

EXECUTE dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO01.LOG',options=>dbms_logmnr.NEW);  
EXECUTE dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO02.LOG',options=>dbms_logmnr.ADDFILE);  
EXECUTE dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO03.LOG',options=>dbms_logmnr.ADDFILE);  

使用Java代碼分析時,使用的SQL語句如下所示。

BEGIN  
dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO01.LOG',options=>dbms_logmnr.NEW);  
dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO02.LOG',options=>dbms_logmnr.ADDFILE);  
dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO03.LOG',options=>dbms_logmnr.ADDFILE);  
END;  

8.查看正在使用的日志文件

SELECT group#, sequence#, status, first_change#, first_time FROM V$log ORDER BY first_change#;

status為CURRENT的為當(dāng)前正在使用的日志文件

9.使用Lominer分析日志

EXECUTE dbms_logmnr.start_logmnr(dictfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR/dictionary.ora');  

使用Java代碼分析時,使用的SQL語句如下所示。

BEGIN
dbms_logmnr.start_logmnr(dictfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR/dictionary.ora'); 
END;

10.查看分析結(jié)果

SELECT sql_redo, sql_undo, seg_owner FROM v$logmnr_contents WHERE seg_name='EMP' AND seg_owner='SYNC'; 

注意:視圖v$logmnr_contents中的分析結(jié)果僅在我們運行過程'dbms_logmrn.start_logmnr'這個會話的生命期中存在,如果要查看新的日志,需要再重新加入分析日志文件、使用LogMiner分析。

11.常見問題

(1)如果出現(xiàn)“必須聲明標(biāo)識符 ‘SYS.DBMS_LOGMNR'”異常,則需要在創(chuàng)建用戶后,為用戶賦予EXECUTE_CATALOG_ROLE權(quán)限,如下所示。

GRANT CONNECT,RESOURCE,DBA,EXECUTE_CATALOG_ROLE TO SYNC; 


(2)當(dāng)在查詢vlogmnrlogs時提示“表或視圖不存在”,是因為沒有查詢vlogmnr_logs的權(quán)限。此時在查詢語句中需要為seg_owner指定相應(yīng)的用戶,例如,我這里使用SYNC用戶通過LogMiner進行分析,則需要將seg_owner指定為SYNC用戶,如下所示。

SELECT sql_redo, sql_undo, seg_owner FROM v$logmnr_contents WHERE seg_name='EMP' AND seg_owner='SYNC'; 

以上就是通過LogMiner實現(xiàn)Oracle數(shù)據(jù)同步遷移的詳細內(nèi)容,更多關(guān)于LogMiner實現(xiàn)Oracle數(shù)據(jù)同步遷移的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • oracle中to_date詳細用法示例(oracle日期格式轉(zhuǎn)換)

    oracle中to_date詳細用法示例(oracle日期格式轉(zhuǎn)換)

    這篇文章主要介紹了oracle中to_date詳細用法示例,包括期和字符轉(zhuǎn)換函數(shù)用法、字符串和時間互轉(zhuǎn)、求某天是星期幾、兩個日期間的天數(shù)、月份差等用法
    2014-01-01
  • ORACLE?ORA-01653:?unable?to?extend?table?的錯誤處理方案(oracle報錯)

    ORACLE?ORA-01653:?unable?to?extend?table?的錯誤處理方案(oracl

    這篇文章主要介紹了ORACLE?ORA-01653:?unable?to?extend?table?的錯誤處理方案,本文通過具體步驟給大家分享解決方案,需要的朋友可以參考下
    2022-08-08
  • oracle創(chuàng)建表的方法和一些常用命令

    oracle創(chuàng)建表的方法和一些常用命令

    這篇文章主要介紹了oracle創(chuàng)建表的方法和一些常用命令,包括表的創(chuàng)建及刪除、有主鍵約束創(chuàng)建、有外鍵約束創(chuàng)建等,需要的朋友可以參考下
    2014-03-03
  • Oracle數(shù)據(jù)庫中的級聯(lián)查詢、級聯(lián)刪除、級聯(lián)更新操作教程

    Oracle數(shù)據(jù)庫中的級聯(lián)查詢、級聯(lián)刪除、級聯(lián)更新操作教程

    這里整理了Oracle中的三種級聯(lián)操作,其中Oracle定義外健的時候可以定義級聯(lián)刪除,但是沒有級聯(lián)修改的語法,當(dāng)然可以用觸發(fā)器實現(xiàn),下面我們詳細來看Oracle數(shù)據(jù)庫中的級聯(lián)查詢、級聯(lián)刪除、級聯(lián)更新操作教程
    2016-05-05
  • 解決Windows10不能安裝Oracle?11g的問題(附詳細安裝教程)

    解決Windows10不能安裝Oracle?11g的問題(附詳細安裝教程)

    這篇文章介紹了解決Windows10不能安裝Oracle?11g的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • Oracle數(shù)據(jù)庫不同損壞級別的恢復(fù)教程

    Oracle數(shù)據(jù)庫不同損壞級別的恢復(fù)教程

    這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫不同損壞級別的恢復(fù)教程,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用Oracle數(shù)據(jù)庫具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • 簡單實例解釋Oracle分頁查詢

    簡單實例解釋Oracle分頁查詢

    這篇文章主要給大家介紹了關(guān)于Oracle分頁查詢的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用Oracle具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Oracle數(shù)據(jù)庫ORA-28001: 口令已經(jīng)失效錯誤解決方案

    Oracle數(shù)據(jù)庫ORA-28001: 口令已經(jīng)失效錯誤解決方案

    這篇文章主要介紹了Oracle數(shù)據(jù)庫ORA-28001: 口令已經(jīng)失效錯誤解決方案的相關(guān)資料,該錯誤表示數(shù)據(jù)庫用戶賬戶的密碼已經(jīng)過期,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-03-03
  • Oracle提高空間使用率的方法小結(jié)

    Oracle提高空間使用率的方法小結(jié)

    這篇文章給大家詳細介紹了Oracle 如何提高空間使用率,文中給大家總結(jié)了八種提高Oracle空間使用率的方法,并通過圖文講解的非常詳細,需要的朋友可以參考下
    2024-02-02
  • oracle自動生成uuid的實現(xiàn)方法

    oracle自動生成uuid的實現(xiàn)方法

    這篇文章主要介紹了oracle自動生成uuid的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11

最新評論

湖北省| 墨玉县| 恩施市| 南华县| 垣曲县| 枣庄市| 安国市| 利辛县| 长子县| 遂宁市| 建德市| 淮阳县| 崇州市| 定安县| 腾冲县| 花莲市| 西宁市| 武功县| 略阳县| 瓮安县| 凤庆县| 方城县| 东阿县| 珲春市| 偃师市| 松滋市| 哈密市| 福鼎市| 太原市| 新和县| 鄢陵县| 长顺县| 永济市| 株洲县| 加查县| 施秉县| 敦化市| 镇巴县| 岱山县| 来凤县| 文昌市|