电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

Oracle10g數(shù)據(jù)庫最佳新特性:等待界面

瀏覽:153日期:2023-11-25 09:13:45
Oracle10g等待界面為還沒有被ADDM 捕捉的即時性能問題提供了有價值的診斷數(shù)據(jù)。 “數(shù)據(jù)庫太慢了!” 這句話通常出自一位嚴格的用戶之口。假如您和我一樣,那么在您的 DBA 生涯中您肯定無數(shù)次聽到過這句話。 那么,您又怎樣解決該問題呢?除了對用戶置之不理之外(這是我們大多數(shù)人都不敢奢望的想法),您可能要做的第一件事就是查看是否有任何會話在等待數(shù)據(jù)庫內(nèi)部或外部的任何事件。 Oracle 提供了一個簡單但一流的機制來達到此目的:V$SESSION_WAIT 視圖。該視圖顯示了有助于您的診斷的各種信息,如一個會話正在等待或已經(jīng)等待的事件,以及等待了多長時間和多少次。例如,假如會話在等待事件 'db file sequential read',列 P1 和 P2 將顯示會話正在等待的塊的 file_id 和 block_id。 對于大多數(shù)等待事件而言,這個視圖足夠了,但它還不是一個強健的調(diào)整工具,之所以如此說,至少是因為以下兩個重要原因: 該視圖是當前情況的一個快照。當?shù)却辉俅嬖跁r,會話先前出現(xiàn)的那些等待的歷史也將消失,從而使得事后診斷非常困難。V$SESSION_EVENT 提供了累積的但不是非常具體的數(shù)據(jù)。 V$SESSION_WAIT 包含了只與等待事件相關(guān)的信息;要獲得所有其它的相關(guān)信息(如用戶 ID 和終端),您必須將它和 V$SESSION 視圖結(jié)合使用。 在 Oracle 數(shù)據(jù)庫 10g 中,等待界面經(jīng)過了徹底的重新設(shè)計,從而只需更少的 DBA 干預(yù)即可提供更多的信息。在本文中,我們將瀏覽這些新的特性,并了解它們?nèi)绾螏椭覀冊\斷性能問題。對于大多數(shù)性能問題,您可以從自動數(shù)據(jù)庫診斷治理器 (ADDM) 中獲得擴展分析,但對于還沒有被 ADDM 捕捉的即時問題,等待界面將提供有價值的診斷數(shù)據(jù)。 增強的會話等待 第一個增強涉及到 V$SESSION_WAIT 本身。這一點通過示例可以很好地說明。 假定您的用戶抱怨會話掛起了。您查明了該會話的 SID,并在 V$SESSION_WAIT 視圖中選中了該 SID 的記錄。輸出顯示如下。 SID : 269SEQ# : 56EVENT:enq:TX - row lock contentionP1TEXT  :namemodeP1  : 1415053318P1RAW: 54580006P2TEXT  :usn<<16 slotP2  : 327681P2RAW: 00050001P3TEXT  :sequenceP3  : 43P3RAW:0000002BWAIT_CLASS_ID: 4217450380WAIT_CLASS# : 1WAIT_CLASS  : ApplicationWAIT_TIME: -2SECONDS_IN_WAIT : 0STATE:WAITED UNKNOWN TIME 注重左邊顯示的列;在這些列中,WAIT_CLASS_ID、WAIT_CLASS# 和 WAIT_CLASS 是 10g 中新增的列。列 WAIT_CLASS 指示等待的類型,必須將其作為有效的等待事件解決或者作為空閑的等待事件退出。在上面的例子中,等待類顯示為 Application,這表示它是一個需要您注重的等待。 該列突出顯示那些能夠證實與您的調(diào)整最相關(guān)的少數(shù)幾條記錄。例如,您可以使用如下查詢來獲取事件的等待會話。 select wait_class, event, sid, state, wait_time, seconds_in_waitfrom v$session_waitorder by wait_class, event, sid/下面是一個樣例輸出: WAIT_CLASS EVENT  SID STATE WAIT_TIME SECONDS_IN_WAIT---------- -------------------- ---------- ------------------- ---------- ------Application enq:TX -  269 WAITING 073row lock contentionIdleQueue Monitor Wait 270 WAITING   040IdleSQL*Net message from client 265 WAITING073Idlejobq slave wait 259 WAITING08485Idlepmon timer 280 WAITING073Idlerdbms ipc message  267 WAITING0184770Idlewakeup time manager 268 WAITING040Network SQL*Net message to client  272 WAITED SHORT TIME -10在這,您可以看到幾個事件(如 Queue Monitor Wait 和 JobQueue Slave)被明確地歸為 Idle 事件。您可以將它們作為非阻塞等待消除掉;不過,有時這些“空閑”事件可能指示一個內(nèi)在的問題。例如,與 SQL*Net 相關(guān)的事件可能指示高網(wǎng)絡(luò)延遲(除其他因素外)。 另一件要注重的重要的事情是,WAIT_TIME 的值為 -2。某些平臺(如 Windows)不支持快速計時機制。假如在這些平臺上沒有設(shè)定初始化參數(shù) TIMED_STATISTICS,那么將無法獲得準確的計時統(tǒng)計數(shù)據(jù)。在這種情況下,在 Oracle9i 中,該列將顯示一個非常大的數(shù)字,這使問題變得更加不清楚。在 10g 中,值 -2 指示這種情況 — 平臺不支持快速定時機制并且沒有設(shè)定 TIMED_STATISTICS。(對于本文剩下的部分,我們將假定存在一個快速計時機制。) 會話也顯示等待 記得長期以來一直需要將 V$SESSION_WAIT 與 V$SESSION 結(jié)合使用以獲得有關(guān)會話的其他具體信息嗎?嗯,這已經(jīng)成為歷史了。在 10g 中,V$SESSION 視圖還顯示由 V$SESSION_WAIT 顯示的等待。下面是 V$SESSION 視圖其余的列,這些列顯示了會話當前等待的等待事件。 EVENT# NUMBEREVENT VARCHAR2(64)P1TEXT VARCHAR2(64)P1 NUMBERP1RAW RAW(4)P2TEXT VARCHAR2(64)P2 NUMBERP2RAW RAW(4)P3TEXT VARCHAR2(64)P3 NUMBERP3RAW RAW(4)WAIT_CLASS_ID NUMBERWAIT_CLASS#NUMBERWAIT_CLASS VARCHAR2(64)WAIT_TIME NUMBERSECONDS_IN_WAITNUMBERSTATE VARCHAR2(19)這些列與 V$SESSION_WAIT 中的那些列相同,且顯示相同的信息,從而不再需要在那個視圖中查看它們了。因此,對于等待任意事件的任意會話,您僅需要查看一個視圖。 讓我們回到原來的問題:SID 為 269 的會話正等待事件 enq:TX — row lock contention,指示它正等待被另一個會話占用的鎖。要診斷該問題,您必須識別占用鎖的那個會話。但您如何才能做到這一點? 在 Oracle9i 及更低版本中,您可能得編寫復(fù)雜(和極耗資源)的查詢來獲得占用鎖的會話的 SID。而在 10g 中,您所要做的就是執(zhí)行以下查詢: select BLOCKING_SESSION_STATUS, BLOCKING_SESSIONfrom v$session where sid = 269BLOCKING_SE BLOCKING_SESSION----------- ----------------VALID265找到了:SID 為 265 的會話阻塞了會話 269。還能更輕易嗎? 用戶仍然在纏著您,因為用戶的問題仍然沒有得到滿足的解答。為什么用戶的會話花了這么長時間才完成?您可以執(zhí)行以下命令來找出原因: select * from v$session_wait_class where sid = 269; 輸出返回為: SID SERIAL# WAIT_CLASS_ID WAIT_CLASS# WAIT_CLASSTOTAL_WAITS TIME_WAITED---- ------- ------------- ----------- ------------- ----------- -----------269110642174503801 Application 873 261537269110632902558402 Configuration4  4269110633864003675 Commit  1  0269110627231689086 Idle 15 148408269110620001533157 Network 15  0269110617407597678 User I/O 26  1注重這里有關(guān)會話等待的大量信息?,F(xiàn)在您知道了,該會話已經(jīng)為與應(yīng)用程序相關(guān)的等待等待了 873 次(共 261,537 厘秒),在與網(wǎng)絡(luò)相關(guān)的事件中等待了 15 次等等。
主站蜘蛛池模板: 珠海网站建设_响应网站建设_珠海建站公司_珠海网站设计与制作_珠海网讯互联 | TPE_TPE热塑性弹性体_TPE原料价格_TPE材料厂家-惠州市中塑王塑胶制品公司- 中塑王塑胶制品有限公司 | 搪瓷反应釜厂家,淄博搪瓷反应釜-淄博卓耀 | 贴板式电磁阀-不锈钢-气动上展式放料阀-上海弗雷西阀门有限公司 工业机械三维动画制作 环保设备原理三维演示动画 自动化装配产线三维动画制作公司-南京燃动数字 | 四探针电阻率测试仪-振实密度仪-粉末流动性测定仪-宁波瑞柯微智能 | 电力测功机,电涡流测功机,磁粉制动器,南通远辰曳引机测试台 | 云南成考网_云南成人高考报名网 粤丰硕水性环氧地坪漆-防静电自流平厂家-环保地坪涂料代理 | 雷达液位计_超声波风速风向仪_雨量传感器_辐射传感器-山东风途物联网 | 电镀整流器_微弧氧化电源_高频电解电源_微弧氧化设备厂家_深圳开瑞节能 | 防勒索软件_数据防泄密_Trellix(原McAfee)核心代理商_Trellix(原Fireeye)售后-广州文智信息科技有限公司 | 技德应用| 电销卡 防封电销卡 不封号电销卡 电话销售卡 白名单电销卡 电销系统 外呼系统 | 珠海白蚁防治_珠海灭鼠_珠海杀虫灭鼠_珠海灭蟑螂_珠海酒店消杀_珠海工厂杀虫灭鼠_立净虫控防治服务有限公司 | 电动高尔夫球车|电动观光车|电动巡逻车|电动越野车厂家-绿友机械集团股份有限公司 | 河南中专学校|职高|技校招生-河南中职中专网 | 合肥废气治理设备_安徽除尘设备_工业废气处理设备厂家-盈凯环保 合肥防火门窗/隔断_合肥防火卷帘门厂家_安徽耐火窗_良万消防设备有限公司 | 微信聊天记录恢复_手机短信删除怎么恢复_通讯录恢复软件下载-快易数据恢复 | crm客户关系管理系统,销售管理系统,crm系统,在线crm,移动crm系统 - 爱客crm | 智慧钢琴-电钢琴-便携钢琴-数码钢琴-深圳市特伦斯乐器有限公司 | 北京模型公司-军事模型-工业模型制作-北京百艺模型沙盘公司 | 伺服电机_直流伺服_交流伺服_DD马达_拓达官方网站 | 自动焊锡机_点胶机_螺丝机-锐驰机器人 | 皮带式输送机械|链板式输送机|不锈钢输送机|网带输送机械设备——青岛鸿儒机械有限公司 | 炭黑吸油计_测试仪,单颗粒子硬度仪_ASTM标准炭黑自销-上海贺纳斯仪器仪表有限公司(HITEC中国办事处) | Win10系统下载_32位/64位系统/专业版/纯净版下载 | 拖链电缆_柔性电缆_伺服电缆_坦克链电缆-深圳市顺电工业电缆有限公司 | BOE画框屏-触摸一体机-触控查询一体机-触摸屏一体机价格-厂家直销-触发电子 | 色谱柱-淋洗液罐-巴罗克试剂槽-巴氏吸管-5ml样品瓶-SBS液氮冻存管-上海希言科学仪器有限公司 | pos机办理,智能/扫码/二维码/微信支付宝pos机-北京万汇通宝商贸有限公司 | 德州万泰装饰 - 万泰装饰装修设计软装家居馆 | 多米诺-多米诺世界纪录团队-多米诺世界-多米诺团队培训-多米诺公关活动-多米诺创意广告-多米诺大型表演-多米诺专业赛事 | 石家庄网站建设|石家庄网站制作|石家庄小程序开发|石家庄微信开发|网站建设公司|网站制作公司|微信小程序开发|手机APP开发|软件开发 | 双杰天平-国产双杰电子天平-美国双杰-常熟双杰仪器 | 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库 | 拉伸膜,PE缠绕膜,打包带,封箱胶带,包装膜厂家-东莞宏展包装 | 广州小程序开发_APP开发公司_分销商城系统定制_小跑科技 | 家用净水器代理批发加盟_净水机招商代理_全屋净水器定制品牌_【劳伦斯官网】 | 全球化工设备网—化工设备,化工机械,制药设备,环保设备的专业网络市场。 | 温控器生产厂家-提供温度开关/热保护器定制与批发-惠州市华恺威电子科技有限公司 | 英国雷迪地下管线探测仪-雷迪RD8100管线仪-多功能数字听漏仪-北京迪瑞进创科技有限公司 | 变色龙云 - 打包app_原生app_在线制作平台_短链接_ip查询 |