<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    2006年10月12日

    SQL*PLUS中,當(dāng)你成功的執(zhí)行一個DML語句,比如 SELECT , DELETE , UPDATE , INSERT,你 可以通過SQL優(yōu)化器和語句的執(zhí)行統(tǒng)計自動的獲得一份報告。這份報告對于DML語句的性能監(jiān)控和調(diào)優(yōu)都是很有用處的。這份報告就是本文要講的AUTOTRACE 報告。

    ?

    配置AUTOTRACE報告(Configuring the AUTOTRACE Report)

    你可以通過以下的AUTOTRACE系統(tǒng)變量來配置AUTOTRACE報告. 如下表:

    Table? AUTOTRACE Settings

    AUTOTRACE Setting

    Result

    SET AUTOTRACE OFF

    不能獲得 AUTOTRACE報告 . 這是默認(rèn)的.

    SET AUTOTRACE ON EXPLAIN

    僅僅顯示優(yōu)化器執(zhí)行計劃的 AUTOTRACE 報告

    SET AUTOTRACE ON STATISTICS

    僅僅顯示SQL語句執(zhí)行的統(tǒng)計結(jié)果的 AUTOTRACE 報告

    SET AUTOTRACE ON

    包括上面兩項內(nèi)容的AUTOTRACE報告

    SET AUTOTRACE TRACEONLY

    SET AUTOTRACE ON類似 ,所有的統(tǒng)計和數(shù)據(jù)都在,但不可以打印

    ?

    其實,平時我們應(yīng)該較多的就是SET AUTOTRACE ON 、SET AUTOTRACE OFF,誰會在乎多看一點AUTOTRACE報告呢! J

    安裝AUTOTRACE報告(Setups Required for the AUTOTRACE Report)

    要用這個特性,用戶必須被賦予PLUSTRACE角色,而PLUSTRACE角色需要DBA來賦予。另外,該用戶必須創(chuàng)建PLAN_TABLE表。

    I.???????????????? 首先創(chuàng)建PLUSTRACE角色并且賦給DBA:

    				CONNECT sys/sys’s password AS SYSDBA 
    		
    				@$ORACLE_HOME/sqlplus/admin/plustrce.sql
    		

    II.????????????? 賦權(quán)限給用戶

    				CONNECT / AS SYSDBA 
    		

    GRANT PLUSTRACE TO USER(預(yù)賦權(quán)的用戶名);

    ?

    這樣,就可以在該用戶下設(shè)置AUTOTRACE報告的顯示與否了。

    ?

    AUTOTRACE報告中涉及到的兩個方面的內(nèi)容

    I.????????????? SQL語句的執(zhí)行計劃

    執(zhí)行計劃就是SQL優(yōu)化器執(zhí)行語句的查詢執(zhí)行順序,每一行的執(zhí)行計劃都會有個行號,這個行號是連續(xù)的

    II.????????? SQL語句的數(shù)據(jù)庫統(tǒng)計

    數(shù)據(jù)庫統(tǒng)計是服務(wù)器記錄的執(zhí)行當(dāng)前的這條語句所需要的系統(tǒng)資源等,主要包括下表的內(nèi)容

    Database Statistic Name

    Description

    recursive calls

    Number of recursive calls generated at both the user and system level. Oracle maintains tables used for internal processing. When Oracle needs to make a change to these tables, it internally generates an internal SQL statement, which in turn generates a recursive call.

    db block gets

    Number of times a CURRENT block was requested.

    consistent gets

    Number of times a consistent read was requested for a block.

    physical reads

    Total number of data blocks read from disk. This number equals the value of "physical reads direct" plus all reads into buffer cache.

    redo size

    Total amount of redo generated in bytes.

    bytes sent via SQL*Net to client

    Total number of bytes sent to the client from the foreground processes.

    bytes received via SQL*Net from client

    Total number of bytes received from the client over Oracle Net.

    SQL*Net roundtrips to/from client

    Total number of Oracle Net messages sent to and received from the client.

    sorts (memory)

    Number of sort operations that were performed completely in memory and did not require any disk writes.

    sorts (disk)

    Number of sort operations that required at least one disk write.

    rows processed

    Number of rows processed during the operation.

    ?

    簡單使用的例子:

    SQL> show user

    USER is "SYS"

    (注:當(dāng)前是sysdba用戶)

    (注:創(chuàng)建PLUSTRACE角色并且賦給DBA)

    SQL> start $ORACLE_HOME/sqlplus/admin/plustrce.sql

    (注:start 等價于@)

    SQL> drop role plustrace;

    drop role plustrace

    ????????? *

    ERROR at line 1:

    ORA-01919: role 'PLUSTRACE' does not exist

    ?

    ?

    SQL> create role plustrace;

    ?

    Role created.

    ?

    SQL>

    SQL> grant select on v_$sesstat to plustrace;

    ?

    Grant succeeded.

    ?

    SQL> grant select on v_$statname to plustrace;

    ?

    Grant succeeded.

    SQL>

    ?

    SQL> grant select on v_$session to plustrace;

    ?

    Grant succeeded.

    ?

    SQL> grant plustrace to dba with admin option;

    ?

    Grant succeeded.

    ?

    SQL>

    SQL> set echo off

    (注:賦角色plustrace給所需用戶,這里用戶是bill)

    SQL> grant plustrace to bill;

    ?

    Grant succeeded.

    (注:接下來,用bill用戶連接,測試AUTOTRACE)

    SQL> connect bill/bill’s password;

    Connected.

    SQL> show user

    USER is "BILL"

    (注:為了看的清楚些,建立一個測試的表test,然后察看AUTOTRACE報告)

    SQL>? create table test(id number(1));

    ?

    Table created.

    ?

    SQL> insert into test values(1);

    ?

    1 row created.

    ?

    SQL> /

    ?

    1 row created.

    ?

    SQL> /

    ?

    1 row created.

    ?

    SQL> /

    ?

    1 row created.

    ?

    SQL> commit;

    ?

    Commit complete.

    SQL> select * from test;

    ?

    ??????? ID

    ----------

    ???????? 1

    ???????? 1

    ???????? 1

    ??????? ?1

    ?

    SQL> set AUTOTRACE on

    SQL> select * from test;

    ?

    ??????? ID

    ----------

    ???????? 1

    ???????? 1

    ???????? 1

    ???????? 1

    ?

    Execution Plan

    ----------------------------------------------------------

    ?? 0????? SELECT STATEMENT Optimizer=CHOOSE

    ?? 1??? 0?? TABLE ACCESS (FULL) OF 'TEST'

    ?

    ?

    ?

    ?

    Statistics

    ----------------------------------------------------------

    ????????? 0? recursive calls

    ????????? 0? db block gets

    ????????? 4? consistent gets

    ????????? 0? physical reads

    ????????? 0? redo size

    ??????? 547? bytes sent via SQL*Net to client

    ??????? 655? bytes received via SQL*Net from client

    ????????? 2? SQL*Net roundtrips to/from client

    ????????? 0? sorts (memory)

    ????????? 0? sorts (disk)

    4???????? rows processed

    ?

    上面我們就可以看到,當(dāng)你設(shè)置了set AUTOTRACE on后,執(zhí)行相應(yīng)的DML語句,就會有相應(yīng)的AUTOTRACE報告出現(xiàn)了。當(dāng)然,我們的這種設(shè)置是session級別的。這樣,我們就可以根據(jù)AUTOTRACE報告對我們執(zhí)行的DML語句進行分析和調(diào)優(yōu)了!

    轉(zhuǎn)自:http://dev.csdn.net/develop/article/23/23430.shtm

    posted @ 2006-10-26 14:00 幸福鄉(xiāng) 閱讀(338) | 評論 (1)編輯 收藏

    SOA 是一種 IT 體系結(jié)構(gòu)樣式,支持將您的業(yè)務(wù)作為鏈接服務(wù)或可重復(fù)業(yè)務(wù)任務(wù)進行集成,可在需要時通過網(wǎng)絡(luò)訪問這些服務(wù)和任務(wù)。這個網(wǎng)絡(luò)可能完全包含在您的公司總部內(nèi),也可能分散于各地且采用不同的技術(shù),通過對來自紐約、倫敦和香港的服務(wù)進行組合,可讓最終用戶感覺似乎這些服務(wù)就安裝在本地桌面上一樣。需要時,這些服務(wù)可以將自己組裝為按需應(yīng)用程序——即相互連接的服務(wù)提供者和使用者集合,彼此結(jié)合以完成特定業(yè)務(wù)任務(wù),使您的業(yè)務(wù)能夠適應(yīng)不斷變化的情況和需求(在有些情況下,甚至不需要人工干預(yù))。

    這些服務(wù)是自包含的,具有定義良好的接口,允許這些服務(wù)的用戶——稱為客戶機或使用者——了解如何與其進行交互。從技術(shù)角度而言,SOA 帶來了“松散耦合”的應(yīng)用程序組件,在此類組件中,代碼不一定綁定到某個特定的數(shù)據(jù)庫(甚至不一定綁定到特定的基礎(chǔ)設(shè)施)。正是得益于這個松散耦合特性,才使得能夠?qū)⒎?wù)組合為各種應(yīng)用程序。這樣還大幅度提高了代碼重用率,可以在增加功能的同時減少工作量。由于服務(wù)和訪問服務(wù)的客戶機并未彼此綁定,因此可以完全替換用于處理訂單的服務(wù),下訂單的客戶機-服務(wù)將永遠不會知道這個更改。所有交互都是基于“服務(wù)契約”進行的;服務(wù)契約用于定義服務(wù)提供者和客戶機之間的交互。通常,您將通過創(chuàng)建“基于消息的”系統(tǒng)來實現(xiàn)此目標(biāo)。

    從業(yè)務(wù)的角度來說,面向服務(wù)的體系結(jié)構(gòu)的重點在于開發(fā)能幫助您完成業(yè)務(wù)任務(wù)的技術(shù),而不是通過技術(shù)約束來規(guī)定您的行動。例如,銷售過程(制造、運輸和收到貨款)可能會涉及數(shù)十個步驟和若干不同的數(shù)據(jù)庫和計算機系統(tǒng)。但就其實質(zhì)而言,此過程包含一系列人工活動,例如:

    • 銷售人員找到潛在客戶
    • 客戶訂購產(chǎn)品
    • 生產(chǎn)部門制造產(chǎn)品
    • 生產(chǎn)部門發(fā)出產(chǎn)品
    • 收款部門開具產(chǎn)品帳單
    • 客戶支付產(chǎn)品貨款

    面向服務(wù)的體系結(jié)構(gòu)基于這些實際活動或業(yè)務(wù)服務(wù)進行組織,而不是形成公司所維護的不同的信息豎井 (Silo)。

    通過實現(xiàn) SOA,可以帶來大量好處,包括以下各個方面:

    • 更高的業(yè)務(wù)和 IT 一致性
    • 基于組件的系統(tǒng)
    • 松散耦合的組件和系統(tǒng)
    • 基于網(wǎng)絡(luò)的基礎(chǔ)設(shè)施,允許分散于各地且采用不同技術(shù)的資源協(xié)同工作
    • 動態(tài)構(gòu)建的按需應(yīng)用程序
    • 更高的代碼重用率
    • 更好地標(biāo)準(zhǔn)化整個企業(yè)內(nèi)的流程
    • 更易于集中企業(yè)控制

    原文地址http://www-128.ibm.com/developerworks/cn/webservices/newto/#1

    posted @ 2006-10-17 13:53 幸福鄉(xiāng) 閱讀(321) | 評論 (1)編輯 收藏

    ?

    我們這里說說四種瀏覽器對 document.body 的?clientHeight、offsetHeight 和 scrollHeight 的解釋。

    這四種瀏覽器分別為IE(Internet Explorer)、NS(Netscape)、Opera、FF(FireFox)。

    clientHeight
    大家對 clientHeight 都沒有什么異議,都認(rèn)為是內(nèi)容可視區(qū)域的高度,也就是說頁面瀏覽器中可以看到內(nèi)容的這個區(qū)域的高度,一般是最后一個工具條以下到狀態(tài)欄以上的這個區(qū)域,與頁面內(nèi)容無關(guān)。

    offsetHeight
    IE、Opera 認(rèn)為 offsetHeight = clientHeight + 滾動條 + 邊框。
    NS、FF 認(rèn)為 offsetHeight 是網(wǎng)頁內(nèi)容實際高度,可以小于 clientHeight。

    scrollHeight
    IE、Opera 認(rèn)為 scrollHeight 是網(wǎng)頁內(nèi)容實際高度,可以小于 clientHeight。
    NS、FF 認(rèn)為 scrollHeight 是網(wǎng)頁內(nèi)容高度,不過最小值是 clientHeight。

    簡單地說
    clientHeight 就是透過瀏覽器看內(nèi)容的這個區(qū)域高度。
    NS、FF 認(rèn)為 offsetHeight 和 scrollHeight 都是網(wǎng)頁內(nèi)容高度,只不過當(dāng)網(wǎng)頁內(nèi)容高度小于等于 clientHeight 時,scrollHeight 的值是 clientHeight,而 offsetHeight 可以小于 clientHeight。
    IE、Opera 認(rèn)為 offsetHeight 是可視區(qū)域?clientHeight 滾動條加邊框。scrollHeight 則是網(wǎng)頁內(nèi)容實際高度。

    同理
    clientWidth、offsetWidth 和 scrollWidth 的解釋與上面相同,只是把高度換成寬度即可。

    但是
    FF 在不同的 DOCTYPE 中對 clientHeight 的解釋不同, xhtml 1 trasitional 中則不是如上解釋的。其它瀏覽器則不存在此問題。

    原文出處:http://www.bjcan.com/hengxing/readlou.asp?id=1606

    posted @ 2006-10-12 12:48 幸福鄉(xiāng) 閱讀(267) | 評論 (0)編輯 收藏


    posts - 3, comments - 2, trackbacks - 0, articles - 0

    Copyright © 幸福鄉(xiāng)

    主站蜘蛛池模板: 亚洲va无码va在线va天堂| mm1313亚洲精品国产| 亚洲毛片在线观看| 国产免费AV片在线观看| 亚洲人成网站在线观看播放| fc2成年免费共享视频18| 亚洲精品A在线观看| 亚洲精品黄色视频在线观看免费资源| 亚洲av中文无码| 9久热这里只有精品免费| 亚洲乳大丰满中文字幕| 久久精品电影免费动漫| 亚洲综合激情九月婷婷| 免费大片黄在线观看yw| 亚洲H在线播放在线观看H| 成年人视频在线观看免费| 美女羞羞喷液视频免费| 国产亚洲精品无码拍拍拍色欲| 国产一区二区三区免费观看在线 | 99re在线视频免费观看| 亚洲人成在久久综合网站| 天天天欲色欲色WWW免费| 国产亚洲成在线播放va| 中文亚洲成a人片在线观看| 污污网站免费观看| 99亚偷拍自图区亚洲| 国产一精品一aⅴ一免费| 国产精品福利片免费看| 亚洲国产综合专区在线电影| 韩国免费一级成人毛片| 美女露100%胸无遮挡免费观看| 亚洲精品国产美女久久久| 69堂人成无码免费视频果冻传媒 | 亚洲一级片免费看| 亚洲高清在线观看| 久久电影网午夜鲁丝片免费| 曰批全过程免费视频观看免费软件| 亚洲AV无码第一区二区三区 | 毛片免费在线视频| 久青草视频在线观看免费| 中文字幕在线观看亚洲视频|