深入淺出等待事件和效能診斷05
明天就是公司年終晚會,這大半個月來天天練舞也夠累的,突然發現自己在ITPUB有大半個月沒有發帖子也沒去關注了,快點調整自己吧也希望明天的年會表演都還順利,不虛度每一個年華吧,畢竟練舞還是付出了很多時間的,特別是對於自己這種手腳不是很靈活的同志,比學oracle還難。
關於autotrace開啟查詢sql執行計劃時,其實原session用於sql查詢輸出,另外內嵌了一個session來統計資訊
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> set autotrace off;
SQL> select sid,serial#,username from v$session where username is not null;
SID SERIAL# USERNAME
---------- ---------- ------------------------------
134 5 SYSMAN
138 14 SYSMAN
141 8 DBSNMP
145 33 DBSNMP
158 8 SYSMAN
159 1965 XIAOYU
已選擇6行。
SQL> set autotrace on
SQL> select sid,serial#,username from v$session where username is not null;
SID SERIAL# USERNAME
---------- ---------- ------------------------------
134 5 SYSMAN
138 14 SYSMAN
141 8 DBSNMP
145 33 DBSNMP
154 2966 XIAOYU
158 8 SYSMAN
159 1965 XIAOYU
已選擇7行。
進一步對這兩個session的程式追蹤發現這兩個session由一個程式引發建立,這也就是一個程式可能對應多個session連線。
SQL> select a.sid,a.username,a.paddr,b.pid,b.spid from v$session a,v$process
2 where a.paddr=b.addr and a.sid in (154,159);
SID USERNAME PADDR PID SPID
---------- ------------------------------ -------- ---------- ------------
154 XIAOYU 26256694 15 3920
159 XIAOYU 26256694 15 3920
又看到pub的帖子上說到了關於exp和imp對1T左右資料的遷移,其實自己也沒做過,但是效率肯定不可觀,拋開I/O不談,預設情況下,exp需要透過磁碟到sga然後到pga(如果沒有指定direct=y),同樣imp也是反向操作。如果用expdp impdp資料磊工具,指定parallel=n也就是cpu數目,例如cpu為5個,然後指定filesize=2048M,dumpfile=dbfile01,dbfile02,dbfile03,dbfile04,dbfile05,開啟多個worker並行匯出到多個檔案中,由於又是呼叫的oracle的API的內部作業機制,效能提升會上一個數量級。
也順便說一下關於asmm管理下,db_nk_cache_size 固定sga log buffer size db_recycle_cache_size等非自動調整的記憶體元件並不在asmm的sga_target自動動態管理,而是由使用者動態手工調整,相應別的能自動動態調整的元件比如cache_buffer_size,shared_pool_size的大小是需要由sga_target減去非動態自動調整元件記憶體大小,可以參考oracle_concept關於sga管理的簡介。
[@more@]來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25362835/viewspace-1057126/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 基於等待事件的效能診斷(轉)事件
- MySQL使用event等待事件進行資料庫效能診斷MySql事件資料庫
- Oracle診斷事件列表(轉)Oracle事件
- 利用errorstack事件進行錯誤跟蹤和診斷Error事件
- 深入淺出React和ReduxReactRedux
- Part II 診斷和優化資料庫效能優化資料庫
- 深入淺出FE(十四)深入淺出websocketWeb
- 效能診斷利器JProfiler快速入門和最佳實踐
- JProfiler for Mac:提升效能和診斷問題的終極工具Mac
- 網路效能監控和診斷市場指南(2020版)
- 深入淺出:5G和HTTPHTTP
- 深入淺出JVM(十一)之如何判斷物件“已死”JVM物件
- 一次ORACLE IO效能診斷案例Oracle
- .NET Core-全域性效能診斷工具
- 淺讀-《深入淺出Nodejs》NodeJS
- Solidity事件,等待事件Solid事件
- 深入淺出mongooseGo
- HTTP深入淺出HTTP
- 深入淺出WebpackWeb
- 深入淺出HTTPHTTP
- mysqldump 深入淺出MySql
- 深入淺出——MVCMVC
- 深入淺出IO
- 深入淺出decorator
- ArrayList 深入淺出
- 深入淺出 RabbitMQMQ
- 深入淺出PromisePromise
- 深入淺出 ZooKeeper
- 深入淺出etcd系列 – 心跳和選舉
- (十八)深入淺出TCPIP之HTTP和HTTPSTCPHTTP
- 深入淺出MyBatis:反射和動態代理MyBatis反射
- 深入淺出MyBatis:JDBC和MyBatis介紹MyBatisJDBC
- sp_sysmon效能診斷結果分析(zt)
- 【TUNE_ORACLE】等待事件之等待事件類別Oracle事件
- 深入淺出開源效能測試工具 Locust (使用篇 2)
- 兩個小問題深入淺出List的效能問題
- 深入淺出,Spring 框架和 Spring Boot 的故事框架Spring Boot
- 深入淺出Tomcat/2 - Tomcat啟動和停止Tomcat
- 深入淺出MyBatis:MyBatis解析和執行原理MyBatis