oracle資料泵匯入分區表統計資訊報錯(一) 問題的現象

來源:互聯網
上載者:User

今天在進行資料泵匯入操作時,發現一個bug。

資料庫版本Oracle 10203 for Solaris RAC,執行匯入在處理表的統計資訊時報錯,錯誤資訊為:ORA-39083和ORA-917。

經過仔細排查,對比來源資料庫分析情況和目標資料庫的表分析情況,發現所有的分區表的統計資訊都沒有匯入。

基本確認問題是IMPDP在處理分區表的統計資訊時出現了問題。

可惜現在問題無法通過構造案例來重現:在目標資料庫中(RAC環境)嘗試建立分區表並執行資料泵的匯出和匯入,無法重現問題。將來源資料庫中出現問題的分區表匯入後,仿照來源資料庫方式收集統計資訊,問題仍然無法重現。

不過只要將來源資料庫中的統計資訊匯出,並在目標資料庫匯入,就可以重現這個問題:

bash-2.03$ impdp test/test directory=d_test dumpfile=zhejiang_order.dp logfile=zhejiang_order.log remap_schema=zhejiang:test include=table/statistics

Import: Release 10.2.0.3.0 - 64bit Production on 星期一, 31 12月, 2007 2:49:30

Copyright (c) 2003, 2005, Oracle. All rights reserved.

串連到: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production

本文URL地址:http://www.bianceng.cn/database/Oracle/201410/45379.htm

With the Partitioning, Real Application Clusters, OLAP and Data Mining options已成功載入/卸載了主表 "TEST"."SYS_IMPORT_FULL_01" 啟動 "TEST"."SYS_IMPORT_FULL_01": test/******** directory=d_test dumpfile=zhejiang_order.dp logfile=zhejiang_order.log remap_schema=zhejiang:test include=table/statistics 處理物件類型 TABLE_EXPORT/TABLE/TABLE_DATA處理物件類型 TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS

ORA-39083: 物件類型 TABLE_STATISTICS 建立失敗, 出現錯誤:

ORA-06550: 第 12 行, 第 17 列:

PL/SQL: ORA-00917: 缺失逗號

ORA-06550: 第 4 行, 第 115 列:

PL/SQL: SQL Statement ignored

ORA-06550: 第 20 行, 第 17 列:

PL/SQL: ORA-00917: 缺失逗號

ORA-06550: 第 12 行, 第 161 列:

PL/SQL: SQL Statement ignored

ORA-06550: 第 28 行, 第 17 列:

PL/SQL: ORA-00917: 缺失逗號

ORA-06550: 第 20 行, 第 161 列:

PL/SQL: SQL Statement ignored

ORA-06550: 第 36 行, 第 17 列:

PL/SQL: ORA-00917: 缺失逗號

ORA-06550: 第 28 行, 第 1作業 "TEST"."SYS_IMPORT_FULL_01" 已經完成, 但是有 1 個錯誤 (於 02:49:38 完成)

根據關鍵資訊在metalink進行查詢,只發現一篇文章在測試別的bug時碰到這個問題,但是Oracle的開發人員並未對這個問題進行處理。

短時間之內找不到導致問題的真正原因,只好先記錄一下問題可能發生的原因和環境。這個問題說大不大,只要在匯入後重新收集一下分區表的資訊即可,但是說小也不小,如果忽略了這個錯誤,缺少統計資訊的是分區表,一般來說分區表都是系統中的大表,訪問也比較頻繁,更重要的是,由於分區表的存在Oracle肯定會使用CBO作為最佳化模式,這時就會使用預設的統計資訊,或者利用動態收集的資訊,很可能會產生一些效率很差的執行計畫,導致整個系統的癱瘓。

作者:51cto部落格 Oracle小混子

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.