oracle11g或oracle10g如何生成errorstack型別的跟蹤檔案trace file系列四
背景
在故障或效能診斷時,有時在在TRCE檔案中會報各種ORACLE錯誤,可以針對這個錯誤,進行ERRORSTATCK特定跟蹤,進行具體的分析;當然如何分析ERRORSTACK檔案的內容,需要在另一文章在討論與學習。
結論
1,errorstack語法請參考測試第1節2,errorstack產生的檔案會包括具體錯誤的SQL語句或源頭
3,透過oredebug生成errorstack檔案
測試
1,語法
例子:
oradebug setospid
alter system set events='1438 trace name errorstack forever,level 10';
alter system set events='1438 trace name errorstack off';
oradebug tracefile_name
2,資料庫版本
SQL> select * from v$version where rownum=1;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
SQL>
TABLESPACE_NAME FILE_NAME FILE_MB AUTOEX
------------------------------------------------------------ -------------------------------------------------- ---------- ------
NEW_UNDOTBS /oracle/oradata/guowang/new_undo1.dbf 109 OFF
SQL> select count(*) from t_1555 as of timestamp to_timestamp('2015-10-15 09:40:00','yyyy-mm-dd hh24:mi:ss');
select count(*) from t_1555 as of timestamp to_timestamp('2015-10-15 09:40:00','yyyy-mm-dd hh24:mi:ss')
*
ERROR at line 1:
ORA-01555: snapshot too old: rollback segment number 77 with name "_SYSSMU77_2420596589$" too small
SQL>
SQL> select spid,pid from v$process where addr='00000000DD651800';
SPID PID
------------------------------------------------ ----------
21723 177
SQL> oradebug setospid 21723
Oracle pid: 177, Unix process pid: 21723, image: oracle@seconary (TNS V1-V3)
SQL> alter system set events='1555 trace name errorstack forever,level 10';
System altered.
SQL> select count(*) from t_1555 as of timestamp to_timestamp('2015-10-15 09:40:00','yyyy-mm-dd hh24:mi:ss');
select count(*) from t_1555 as of timestamp to_timestamp('2015-10-15 09:40:00','yyyy-mm-dd hh24:mi:ss')
*
ERROR at line 1:
ORA-01555: snapshot too old: rollback segment number 77 with name "_SYSSMU77_2420596589$" too small
SQL> alter system set events='1555 trace name errorstack off';
System altered.
SQL> oradebug tracefile_name
/oracle/diag/rdbms/guowang/guowang/trace/guowang_ora_21723.trc
----- Error Stack Dump -----
ORA-01555: snapshot too old: rollback segment number 77 with name "???" too small
----- Current SQL Statement for this session (sql_id=7rst1mvf3t1c4) -----
select count(*) from t_1555 as of timestamp to_timestamp('2015-10-15 09:40:00','yyyy-mm-dd hh24:mi:ss')
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
*** 2015-10-17 09:49:45.572
skdstdst()+36 call kgdsdst() 000000000 ? 000000000 ?
7FFFA4696F88 ? 000000001 ?
7FFFA469B488 ? 000000000 ?
ksedst1()+98 call skdstdst() 000000000 ? 000000000 ?
7FFFA4696F88 ? 000000001 ?
000000000 ? 000000000 ?
ksedst()+34 call ksedst1() 000000000 ? 000000001 ?
7FFFA4696F88 ? 000000001 ?
000000000 ? 000000000 ?
dbkedDefDump()+2736 call ksedst() 000000000 ? 000000001 ?
7FFFA4696F88 ? 000000001 ?
000000000 ? 000000000 ?
ksedmp()+36 call dbkedDefDump() 00000000A ? 000000000 ?
7FFFA4696F88 ? 000000001 ?
000000000 ? 000000000 ?
dbkdaKsdActDriver() call ksedmp() 00000000A ? 000000000 ?
+1947 7FFFA4696F88 ? 000000001 ?
000000000 ? 000000000 ?
dbgdaExecuteAction( call dbkdaKsdActDriver() 2B2574B6B6F0 ? 7FFFA469DB30 ?
)+1020 7FFFA4696F88 ? 000000001 ?
000000000 ? 000000000 ?
dbgdaRunAction()+81 call dbgdaExecuteAction( 2B2574B6B6F0 ? 009138928 ?
0 ) 0020C0003 ? 7FFFA469DB30 ?
000000001 ? 000000000 ?
dbgdRunActions()+59 call dbgdaRunAction() 2B2574B6B6F0 ? 000000005 ?
0020C0003 ? 7FFFA469DB30 ?
000000001 ? 000000000 ?
dbgdProcessEventAct call dbgdRunActions() 2B2574B6B6F0 ? 000000005 ?
ions()+615 0020C0003 ? 7FFFA469DB30 ?
000000001 ? 000000000 ?
dbgdChkEventKgErr() call dbgdProcessEventAct 2B2574B
個人簡介
8年oracle從業經驗,具備豐富的oracle技能,目前在國內北京某專業oracle服務公司從事高階技術顧問。
服務過的客戶:
中國電信
中國移動
中國聯通
中國電通
國家電網
四川達州商業銀行
湖南老百姓大藥房
山西省公安廳
中國郵政
北京302醫院
河北廊坊新奧集團公司
專案經驗:
中國電信3G專案AAA系統資料庫部署及最佳化
中國聯通4G資料庫效能分析與最佳化
中國聯通4G資料庫效能分析與最佳化
中國聯通CRM資料庫效能最佳化
中國移動10086電商平臺資料庫部署及最佳化
湖南老百姓大藥房ERR資料庫sql最佳化專案
四川達州商業銀行TCBS核心業務系統資料庫模型設計和RAC部署及最佳化
四川達州商業銀行TCBS核心業務系統後端批處理儲存過程功能模組編寫及最佳化
北京高鐵訊號監控系統RAC資料庫部署及最佳化
河南宇通客車資料庫效能最佳化
中國電信電商平臺核心採購模組表模型設計及最佳化
中國郵政儲蓄系統資料庫效能最佳化及sql最佳化
北京302醫院資料庫遷移實施
河北廊坊新奧data guard部署及最佳化
山西公安廳身份證審計資料庫系統故障評估
國家電網上海災備專案4 node rac+adg
貴州移動crm及客服資料庫效能最佳化專案
貴州移動crm及客服務資料庫sql稽核專案
深圳穆迪軟體有限公司資料庫效能最佳化專案
貴州移動crm及客服資料庫效能最佳化專案
貴州移動crm及客服務資料庫sql稽核專案
深圳穆迪軟體有限公司資料庫效能最佳化專案
聯絡方式:
手機:18201115468
qq : 305076427
qq微博: wisdomone1
新浪微博:wisdomone9
qq群:275813900
itpub部落格名稱:wisdomone1 http://blog.itpub.net/9240380/
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-1815042/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- truncate、recreate後臺程式跟蹤檔案(trace file)
- 跟蹤 sql 的trace檔案SQL
- Oracle跟蹤檔案trace檔案Oracle
- 【最佳化】SQL_TRACE之生成跟蹤檔案SQL
- ass109.awk 分析Oracle 的跟蹤檔案(trace file)Oracle
- 跟蹤session 與 trace檔案分析Session
- 跟蹤SESSION 與 trace 檔案解析Session
- sp_trace_setfilter sqlserver篩選跟蹤或跟蹤過濾FilterSQLServer
- 監聽器控制程式lsnrctl跟蹤trace file
- 10046 跟蹤的trace檔案相關解釋
- 跟蹤oracle特定報錯 errorstackOracleError
- 【TRACE】如何設定或動態跟蹤Oracle net偵聽器Oracle
- Oracle EBS 如何生成trace檔案Oracle
- trace errorstackError
- SQL 的跟蹤方法traceSQL
- 【TRACE】Oracle跟蹤事件Oracle事件
- 檔案-跟蹤檔案
- sql_trace跟蹤檔案中名詞簡寫說明SQL
- 如何在 Git 中取消檔案的跟蹤Git
- 控制檔案的跟蹤檔案全文
- [zt] oracle跟蹤檔案與跟蹤事件Oracle事件
- oracle跟蹤檔案與跟蹤事件(zt)Oracle事件
- oracle跟蹤檔案和跟蹤事件(zt)Oracle事件
- Oracle跟蹤檔案Oracle
- 表示一個檔案的 File 型別型別
- trace檔案無法生成
- <input type="file"> 限制檔案型別型別
- 路由跟蹤工具0trace路由
- 用oracle trace 來跟蹤sessionOracleSession
- sql_trace跟蹤工具(轉)SQL
- 【MySQL】如何對SQL語句進行跟蹤(trace)?MySql
- openssl之BIO系列之11---檔案(file)型別BIO (轉)型別
- 解析listener跟蹤檔案
- git 忽略跟蹤檔案Git
- 尋找跟蹤檔案
- 在oracle10g及oracle11g使用oradebug生成systemstate dump檔案系列二Oracle
- 使用ErrorStack進行錯誤跟蹤及診斷Error
- 使用ErrorStack進行錯誤跟蹤及診斷!Error