解決Oracle LogMiner擷取資料字典檔案需要修改UTL_FILE_DIR的問題

來源:互聯網
上載者:User

按照Oracle官方文檔,在用logminer擷取資料字典檔案時,需要設定UTL_FILE_DIR參數,然而設定這個參數必須要重新啟動資料庫,在某些7×24的關鍵業務是做不到的,是否有其他的方法能夠構造字典資訊呢?答案是肯定的。

具體的步驟為:

1.資料庫設定為歸檔

2.添加supplement log data

3. 將資料字典儲存在redolog中,EXECUTE DBMS_LOGMNR_D.BUILD ( - 2 OPTIONS=>DBMS_LOGMNR_D.STORE_IN_REDO_LOGS);

4.查看資料字典對應的歸檔日誌

SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE DICTIONARY_BEGIN='YES';  -- 查詢開始

SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE DICTIONARY_END='YES'; -- 查詢結束的歸檔日誌

5.通過LogMiner,解析歸檔日誌,將歸檔日誌解析成sql語句

SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR(OPTIONS => DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG);

6.查詢v$logmnr_contents的sql_redo,將結果spool到某個檔案中。

7.通過其他相同版本的測試資料庫建立資料字典檔案,調出其中的create_table語句,放入到你輸出spool的檔案中。

8.驗證其中的資料,與過程產生的資料字典檔案比較,重要的ID值都是一樣的,測試後我們構造的資料字典檔案可用。

最後鄙視一下Oracle,到11gR2了仍然需要設定這個參數,應該早就改成自己設定directory了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.