物件統計資訊鎖定的解決辦法(ORA-20005/ORA-38029)
昨天我從9i R2裡匯出了幾張表,然後匯入到11g R2中,在匯入成功後我要收集下這些表的資訊,結果發現好幾張表都沒法收集,用DBMS_STATS包顯示ORA-20005:object statistics are locked (stattype = ALL),用Analyze命令顯示ORA-38029: 物件統計資訊已鎖定。
解決辦法很明確,就是解鎖。
可以從兩個層面去處理:
A、解鎖Schema
DBMS_STATS.UNLOCK_schema_STATS(user);
B、解鎖單個物件
1)先查出被鎖定的表select table_name from user_tab_statistics where stattype_locked is not null;
然後再解鎖物件
exec dbms_stats.unlock_table_stats(user,'表名');
2)也可直接生成sql指令碼
select 'exec dbms_stats.unlock_table_stats('''||user||''','''||table_name||''');' from user_tab_statistics where stattype_locked is not null;
這裡不在生成的sql中用動態的user是為了讓執行者明確知道到底是解鎖哪個schema下的表,防止誤操作。
不過,你要特別注意,Oracle為什麼會要鎖定住統計資訊?
一般而言,這是為了穩定執行計劃,因為在Oracle 10g以上,Oracle預設會自動收集統計資訊,要想鎖住統計資訊,請使用LOCK_SCHEMA_STATS、LOCK_TABLE_STATS包。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29867/viewspace-730902/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORA-38029: 物件統計資訊已鎖定處理物件
- expdp不導資料而匯出統計資訊導致統計資訊鎖定(ORA-20005)
- SVN “工作副本 “...” 已經鎖定”的解決辦法
- SqlServer鎖表解鎖解決辦法SQLServer
- SVN被鎖的解決辦法
- Word的檔案被鎖定,無法編輯的解決辦法
- 使用SVN提示“工作副本已經鎖定”的解決辦法 .
- 使用者被鎖解決辦法
- Oracle死鎖的檢視以及解決辦法Oracle
- 轉載--packagekit鎖住yum的解決辦法Package
- IIS中“未將物件引用設定到物件的例項”錯誤解決辦法物件
- 鎖的種類,阻塞,死鎖產生與解決辦法。
- root鎖屏解決辦法之一(轉)
- oracle 由於impdp 引起的表統計資訊被鎖 ORA-20005: object statistics are lockedOracleObject
- oracle 由於impdp 引起的表統計資訊被鎖 ORA-20005: object statistics are lockedOracleObject
- win10桌面桌布被鎖定無法修改怎麼辦_win10桌面桌布被鎖定無法更改的解決方法Win10
- oracle表鎖住 解鎖辦法Oracle
- sbt卡住的解決辦法,sbt設定代理
- 統計資訊收集不完的解決
- 通過鎖定表的統計資訊來穩定sql的執行計劃SQL
- “theform._eventtarget 為空或者不是物件”,解決辦法ORM物件
- ORA-20005的解決方法
- UICollectionView設定行間距失效,解決辦法UIView
- win10系統桌面桌布被鎖定無法修改怎麼解決Win10
- 全域性臨時表GTT的統計資訊收集辦法:
- Apple ID已被鎖定或停用解決辦法 Apple ID已被停用怎麼解除APP
- 處理鎖住的統計資訊
- OpenStack 的NAT解決辦法
- Win 7作業系統假死的解決辦法作業系統
- 解決ora-20005的遊標
- Win10系統下回收站無法鎖定到工作列的解決方法Win10
- Ubuntu 報錯:無法獲得鎖 /var/lib/dpkg/lock解決辦法Ubuntu
- Xamarin中VS無法連線Mac系統的解決辦法Mac
- MacOS系統無法連線5g wifi的解決辦法,你確定不來看看嗎?MacWiFi
- PLSQL Developer中鎖定Window List視窗辦法SQLDeveloper
- ORA-28056的解決辦法
- job都停了的解決辦法
- 實用派:iPhone 6指紋解鎖失敗問題解決辦法iPhone