[20231025]跟蹤rename操作2.txt
[20231025]跟蹤rename操作2.txt
--//做一個rename 操作,看看主要修改那些資料字典。
1.環境:
SCOTT@book> @ ver1
PORT_STRING VERSION BANNER
------------------- ---------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx 11.2.0.4.0 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
2.測試:
SCOTT@book> create table deptx as select * from dept;
Table created.
--//分析略.
SCOTT@book> rename deptx to depty;
Table renamed.
SCOTT@book> @ 10046on 12
Session altered.
SCOTT@book> rename depty to deptz;
Table renamed.
SCOTT@book> @ 10046off
Session altered.
SCOTT@book> @ t
TRACEFILE
----------------------------------------------------------------------------
/u01/app/oracle/diag/rdbms/book/book/trace/book_ora_61833.trc
--//做兩次rename,主要是避免跟蹤到一些不必要的遞規語句。
3.檢視跟蹤檔案內容:
$ extractsql.sh /u01/app/oracle/diag/rdbms/book/book/trace/book_ora_61833.trc | egrep -i "^delete|^update|^insert"
update ind$ set flags = flags + 8 where obj# = :1
delete from idl_ub1$ where obj#=:1
delete from idl_char$ where obj#=:1
delete from idl_ub2$ where obj#=:1
delete from idl_sb4$ where obj#=:1
delete from error$ where obj#=:1
delete from obj$ where obj# = :1
~~~~~~~~~~~~~~~~~~
insert into obj$(owner#,name,namespace,obj#,type#,ctime,mtime,stime,status,remoteowner,linkname,subname,dataobj#,flags,oid$,spare1,spare2,spare3) values(:1,:2,:3,:4,:5,:6,:7,:8,:9,:10,:11,:12,:13,:14,:15,:16,:17,:18)
~~~~~~~~~~~~~~~~~~
update sdo_geor_sysdata_table set GEORASTER_TABLE_NAME=:1 where GEORASTER_TABLE_NAME=:2
update mdsys.sdo_tin_pc_sysdata_table set TABLE_NAME=:1 where TABLE_NAME=:2 and sdo_owner=:3
update mdsys.sdo_tin_pc_seq set TABLE_NAME=:1 where TABLE_NAME=:2 and sdo_owner=:3
--//主要看下劃線的2條DML語句,可以判斷rename是先刪除再插入obj$,而不是採用update完成的.
--//這也驗證了我測試rename IDL_UB1$操作的恢復時出現的情況。
--//附上extractsql.sh指令碼:
$cat extractsql.sh
#! /bin/bash
awk '/PARSING IN CURSOR/,/END OF STMT/' $1 | egrep -v '^PARSING|^END OF STMT'
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2991954/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [zt] oracle跟蹤檔案與跟蹤事件Oracle事件
- oracle跟蹤檔案與跟蹤事件(zt)Oracle事件
- oracle跟蹤檔案和跟蹤事件(zt)Oracle事件
- 【標題:Tag&Rename 1.7 文章一 :跟蹤,並且製作Loader。(適合初學者)】
- oracle11g有DBMS_MONITOR跟蹤TRUNCATE操作Oracle
- sqlnet跟蹤SQL
- ORACLE 跟蹤工具Oracle
- [20160902][轉載]跟蹤rman操作.txt
- 利用sql_trace跟蹤一個指定會話的操作SQL會話
- 使用10046 event trace跟蹤全表掃描操作
- Oracle中如何跟蹤SQL或資料庫操作 [final]OracleSQL資料庫
- 基於行跟蹤的ROWDEPENDENCIES實現資訊變化跟蹤
- 【Longkin】ASP.NET應用程式跟蹤---(一)跟蹤頁面ASP.NET
- [20200417]跟蹤特定sql語句以及v$open_cursor檢視2.txtSQL
- 反跟蹤技術
- 【TRACE】Oracle跟蹤事件Oracle事件
- Oracle跟蹤會話Oracle會話
- Oracle 跟蹤事件【轉】Oracle事件
- Oracle跟蹤檔案Oracle
- 主力跟蹤戰法
- 關於SD業務幾個TCODE操作的SAP表跟蹤
- sp_trace_setfilter sqlserver篩選跟蹤或跟蹤過濾FilterSQLServer
- git的跟蹤分支和遠端跟蹤分支學習筆記Git筆記
- ORACLE 10046 設定跟蹤事件後無跟蹤檔案Oracle事件
- 填報表怎麼跟蹤使用者操作,記錄日誌?
- [20131122]跟蹤sql profile的操作.txtSQL
- 除錯跟蹤利器---strace除錯
- SQLServer進行SQL跟蹤SQLServer
- 會話跟蹤技術會話
- 跟蹤執行命令T
- 給會話開跟蹤會話
- 棧呼叫關係跟蹤
- 解析listener跟蹤檔案
- oracle session(會話) 跟蹤OracleSession會話
- git 忽略跟蹤檔案Git
- 會話級SQL跟蹤會話SQL
- Oracle跟蹤事件 -- set eventsOracle事件
- (zt) 開啟事件跟蹤事件