真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何查看oracle性能 如何查看oracle數(shù)據(jù)庫(kù)性能

九大Oracle性能優(yōu)化基本方法詳解

Oracle性能優(yōu)化基本方法包括一下幾個(gè)步驟 包括

創(chuàng)新互聯(lián)公司專注于浦東企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城系統(tǒng)網(wǎng)站開(kāi)發(fā)。浦東網(wǎng)站建設(shè)公司,為浦東等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站開(kāi)發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)

)設(shè)立合理的Oracle性能優(yōu)化目標(biāo)

)測(cè)量并記錄當(dāng)前的Oracle性能

)確定當(dāng)前Oracle性能瓶頸(Oracle等待什么 哪些SQL語(yǔ)句是該等待事件的成分)

)把等待事件記入跟蹤文件

)確定當(dāng)前的OS瓶頸

)優(yōu)化所需的成分(應(yīng)用程序 數(shù)據(jù)庫(kù) I/O 爭(zhēng)用 OS等)

)跟蹤并實(shí)施更改控制過(guò)程

)測(cè)量并記錄當(dāng)前性能

)重復(fù)步驟 到 直到滿足優(yōu)化目標(biāo)

下面來(lái)一一詳述

設(shè)立合理的Oracle性能優(yōu)化目標(biāo)

重點(diǎn) 關(guān)于設(shè)立目標(biāo)的最重要的一點(diǎn)是它們必須是可量化和可達(dá)到的

方法 目標(biāo)必須是當(dāng)前性能和所需性能的的陳述形式的語(yǔ)句

測(cè)量并記錄當(dāng)前Oracle性能重點(diǎn)

)需要在峰值活動(dòng)時(shí)間獲得當(dāng)前系統(tǒng)性能快照

)關(guān)鍵是要在出現(xiàn)性能問(wèn)題的時(shí)間段內(nèi)采集信息

)必須在合理的時(shí)間段上采集 一般在峰值期間照幾個(gè)為期 分鐘的快照

確定當(dāng)前Oracle性能瓶頸重點(diǎn) 從Oracle 等待接口v$system_event v$session_event和v$session_wait中獲得等待事件 進(jìn)而找出影響性能的對(duì)象和sql語(yǔ)句 方法如下

)首先 利用v$system_event視圖執(zhí)行下面的查詢查看數(shù)據(jù)庫(kù)中某些常見(jiàn)的等待事件

select * from v$system_event

where event in ( buffer busy waits

db file sequential read

db file scattered read

enqueue

free buffer waits

latch free

log file parallel write

log file sync );

)接著 利用下面對(duì)v$session_event和v$session視圖進(jìn)行的查詢 研究具有對(duì)上面顯示的內(nèi)容有貢獻(xiàn)的等待事件的會(huì)話

select se sid s username se event se total_waits se time_waited se average_wait

from v$session s v$session_event se

where s sid = se sid

and se event not like SQL*Net%

and s status = ACTIVE

and s username is not null;

)使用下面查詢找到與所連接的會(huì)話有關(guān)的當(dāng)前等待事件 這些信息是動(dòng)態(tài)的 為了查看一個(gè)會(huì)話的等待最多的事件是什么 需要多次執(zhí)行此查詢

select sw sid s username sw event sw wait_time sw state sw seconds_in_wait SEC_IN_WAIT

from v$session s v$session_wait sw

where s sid = sw sid

and sw event not like SQL*Net%

and s username is not null

order by sw wait_time desc;

)查詢會(huì)話等待事件的詳細(xì)信息

select sid event p text p p text p p text p

from v$session_wait

where sid beeen and

and event not like %SQL%

and event not like %rdbms% ;

)利用P P 的信息 找出等待事件的相關(guān)的段

select owner segment_name segment_type tablespace_name

from dba_extents

where file_id = fileid_in

and blockid_in beeen block_id and block_id + blocks ;

)獲得操作該段的sql語(yǔ)句

select sid getsqltxt(sql_hash_value sql_address)

from v$session

where sid = sid_in;

)getsqltxt函數(shù)

)至此已經(jīng)找到影響性能的對(duì)象和sql語(yǔ)句 可以有針對(duì)性地優(yōu)化

把等待事件記入跟蹤文件

重點(diǎn) 如果在跟蹤系統(tǒng)上的等待事件時(shí) 由于某種原因遇到了麻煩 則可以將這些等待事件記入一個(gè)跟蹤文件 方法如下

)對(duì)于當(dāng)前會(huì)話

alter session set timed_statistics=true;

alter session set max_dump_file_size=unlimited;

alter session set events trace name context forever level ;

)執(zhí)行應(yīng)用程序 然后在USER_DUMP_DEST指出的目錄中找到跟蹤文件

)查看文件中以詞WAIT開(kāi)始的所有行

)對(duì)于其它的會(huì)話

)確定會(huì)話的進(jìn)程ID(SPID) 下面的查詢識(shí)別出名稱以A開(kāi)始的所有用戶的會(huì)話進(jìn)程ID

select S Username P Spid from V$SESSION S V$PROCESS P

where S PADDR = P ADDR and S Username like A% ;

)以sysdba進(jìn)入sqlplus執(zhí)行

alter session set timed_statistics=true;

alter session set max_dump_file_size=unlimited;

oradebug setospid

oradebug unlimit

oradebug event trace name context forever level X /* Where X = ( ) */

)跟蹤某個(gè)時(shí)間間隔得會(huì)話應(yīng)用程序

)在USER_DUMP_DEST 的值指出的目錄中利用SPID查看跟蹤文件

)查看文件中以詞WAIT開(kāi)始的所有行

確定當(dāng)前OS瓶頸 )Windows NT上的監(jiān)控

使用控制面板 〉管理工具 〉性能即可

)UNIX上的監(jiān)控

使用通用性的工具 包括sar iostat cpustat mpstat netstat top osview等

.Oracle性能優(yōu)化所需的成分(應(yīng)用程序 數(shù)據(jù)庫(kù) I/O 爭(zhēng)用 OS等)

.跟蹤并實(shí)施更改控制過(guò)程

.測(cè)量并記錄當(dāng)前Oracle性能

lishixinzhi/Article/program/Oracle/201311/18709

如何提高oracle模糊查詢的性能?

1、使用兩邊加‘%’號(hào)的查詢,Oracle是不通過(guò)索引的,所以查詢效率很低。

例如:select count(*) from lui_user_base t where t.user_name like '%cs%';

2、like '...%'和 like'%...'雖然走了索引,但是效率依然很低。

3、有人說(shuō)使用如下sql,他的效率提高了10倍,但是數(shù)據(jù)量小的時(shí)候

select count(*) from lui_user_base where rowid in (select rowid from lui_user_base t where t.user_name like '%cs%')

我拿100w跳數(shù)據(jù)做了測(cè)試,效果一般,依然很慢,原因:

select rowid from lui_user_base t where t.user_name like '%cs%' ? 這條sql執(zhí)行很快,那是相當(dāng)?shù)目欤欠诺絪elect count(*) from lui_user_base where rowid in()里后,效率就會(huì)變的很慢了。

4、select count(*) from lui_user_base t where instr(t.user_name,'cs') 0

這種查詢效果很好,速度很快,推薦使用這種。因?yàn)槲覍?duì)oracle內(nèi)部機(jī)制不是很懂,只是對(duì)結(jié)果做了一個(gè)說(shuō)明。

5、有人說(shuō)了用全文索引,我看了,步驟挺麻煩,但是是個(gè)不錯(cuò)的方法,留著備用:

對(duì)cmng_custominfo 表中的address字段做全文檢索:

1,在oracle9201中需要?jiǎng)?chuàng)建一個(gè)分詞的東西:

BEGIN

ctx_ddl.create_preference ('SMS_ADDRESS_LEXER', 'CHINESE_LEXER');

--ctx_ddl.create_preference ('my_lexer', 'chinese_vgram_lexer'); 不用

end;

2,創(chuàng)建全文檢索:

CREATE INDEX INX_CUSTOMINFO_ADDR_DOCS ON cmng_custominfo(address) INDEXTYPE IS CTXSYS.CONTEXT PARAMETERS ('LEXER SMS_ADDRESS_LEXER');

3,查詢時(shí)候,使用:

select * from cmng_custominfo where contains (address, '金色新城')1;

4,需要定期進(jìn)行同步和優(yōu)化:

同步:根據(jù)新增記錄的文本內(nèi)容更新全文搜索的索引。

begin

ctx_ddl.sync_index('INX_CUSTOMINFO_ADDR_DOCS');

end;

優(yōu)化:根據(jù)被刪除記錄清除全文搜索索引中的垃圾

begin

ctx_ddl.optimize_index('INX_CUSTOMINFO_ADDR_DOCS', 'FAST');

end;

5,采用job做步驟4中的工作:

1)該功能需要利用oracle的JOB功能來(lái)完成

因?yàn)閛racle9I默認(rèn)不啟用JOB功能,所以首先需要增加ORACLE數(shù)據(jù)庫(kù)實(shí)例的JOB配置參數(shù):

job_queue_processes=5

重新啟動(dòng)oracle數(shù)據(jù)庫(kù)服務(wù)和listener服務(wù)。

2)同步 和 優(yōu)化

--同步 sync:

variable jobno number;

BEGIN

DBMS_JOB.SUBMIT(:jobno,'ctx_ddl.sync_index(''INX_CUSTOMINFO_ADDR_DOCS'');',

SYSDATE, 'SYSDATE + (1/24/4)');

commit;

END;

--優(yōu)化

variable jobno number;

begin

DBMS_JOB.SUBMIT(:jobno,'ctx_ddl.optimize_index(''INX_CUSTOMINFO_ADDR_DOCS'',''FULL'');', SYSDATE, 'SYSDATE + 1');

commit;

END;

其中, 第一個(gè)job的SYSDATE + (1/24/4)是指每隔15分鐘同步一次,第二個(gè)job的SYSDATE + 1是每隔1天做一次全優(yōu)化。具體的時(shí)間間隔,可以根據(jù)應(yīng)用的需要而定。

6,索引重建

重建索引會(huì)刪除原來(lái)的索引,重新生成索引,需要較長(zhǎng)的時(shí)間。

重建索引語(yǔ)法如下:

ALTER INDEX INX_CUSTOMINFO_ADDR_DOCS REBUILD;

據(jù)網(wǎng)上一些用家的體會(huì),oracle重建索引的速度也是比較快的,有一用家這樣描述:

Oracle 的全文檢索建立和維護(hù)索引要比ms sql server都要快得多,筆者的65萬(wàn)記錄的一個(gè)表建立索引只需要20分鐘,同步一次只需要1分鐘。

因此,也可以考慮用job的辦法定期重建索引。

如何查詢oracle 數(shù)據(jù)庫(kù)性能,sql資源占用

作為一個(gè)開(kāi)發(fā)/測(cè)試人員,或多或少都得和數(shù)據(jù)庫(kù)打交道,而對(duì)數(shù)據(jù)庫(kù)的操作歸根到底都是SQL語(yǔ)句,所有操作到最后都是操作數(shù)據(jù),那么對(duì)sql性能的掌控又成了我們工作中一件非常重要的工作。下面簡(jiǎn)單介紹下一些查看oracle性能的一些實(shí)用方法:

1、查詢每臺(tái)機(jī)器的連接數(shù)

select?t.MACHINE,count(*)?from?v$session?t?group?by?t.MACHINE

這里所說(shuō)的每臺(tái)機(jī)器是指每個(gè)連接oracle數(shù)據(jù)庫(kù)的服務(wù)器,每個(gè)服務(wù)器都有配置連接數(shù)據(jù)庫(kù)的連接數(shù),以websphere為例,在數(shù)據(jù)源中,每個(gè)數(shù)據(jù)源都有配置其最大/最小連接數(shù)。

執(zhí)行SQL后,可以看到每個(gè)服務(wù)器連接oracle數(shù)據(jù)庫(kù)的連接數(shù),若某個(gè)服務(wù)器的連接數(shù)非常大,或者已經(jīng)達(dá)到其最大連接數(shù),那么這臺(tái)服務(wù)器上的應(yīng)用可能有問(wèn)題導(dǎo)致其連接不能正常釋放。

2、查詢每個(gè)連接數(shù)的sql_text

v$session表里存在的連接不是一直都在執(zhí)行操作,如果sql_hash_value為空或者0,則該連接是空閑的,可以查詢哪些連接非空閑,?web3?是機(jī)器名,就是WebSphere?Application?Server?的主機(jī)名。

select?t.sql_hash_value,t.*??from?v$session?t?where?t.MACHINE='web3'?and?t.sql_hash_value!=0

這個(gè)SQL查詢出來(lái)的結(jié)果不能看到具體的SQL語(yǔ)句,需要看具體SQL語(yǔ)句的執(zhí)行下面的方法。

3、查詢每個(gè)活動(dòng)的連接執(zhí)行什么sql

select?sid,username,sql_hash_value,b.sql_text

from?v$session?a,v$sqltext?b

where?a.sql_hash_value?=?b.HASH_VALUE?and?a.MACHINE='web3'

order?by?sid,username,sql_hash_value,b.piece

order?by這句話的作用在于,sql_text每條記錄不是保存一個(gè)完整的sql,需要以sql_hash_value為關(guān)鍵id,以piece排序,如圖

Username是執(zhí)行SQL的數(shù)據(jù)庫(kù)用戶名,一個(gè)sql_hash_value下的SQL_TEXT組合成一個(gè)完整的SQL語(yǔ)句。這樣就可以看到一個(gè)連接執(zhí)行了哪些SQL。

4、.從V$SQLAREA中查詢最占用資源的查詢

select?b.username?username,a.disk_reads?reads,?a.executions?exec,

a.disk_reads/decode(a.executions,0,1,a.executions)?rds_exec_ratio,

a.sql_text?Statement

from??v$sqlarea?a,dba_users?b

where?a.parsing_user_id=b.user_id

and?a.disk_reads??100000

order?by?a.disk_reads?desc;

用buffer_gets列來(lái)替換disk_reads列可以得到占用最多內(nèi)存的sql語(yǔ)句的相關(guān)信息。

V$SQL是內(nèi)存共享SQL區(qū)域中已經(jīng)解析的SQL語(yǔ)句。

該表在SQL性能查看操作中用的比較頻繁的一張表,關(guān)于這個(gè)表的詳細(xì)信息大家可以去?上學(xué)習(xí),介紹得比較詳細(xì)。我這里主要就將該表的常用幾個(gè)操作簡(jiǎn)單介紹一下:

1、列出使用頻率最高的5個(gè)查詢:

select?sql_text,executions

from?(select?sql_text,executions,

rank()?over

(order?by?executions?desc)?exec_rank

from?v$sql)

where?exec_rank?=5;

該查詢結(jié)果列出的是執(zhí)行最頻繁的5個(gè)SQL語(yǔ)句。對(duì)于這種實(shí)用非常頻繁的SQL語(yǔ)句,我們需要對(duì)其進(jìn)行持續(xù)的優(yōu)化以達(dá)到最佳執(zhí)行性能。

2、找出需要大量緩沖讀?。ㄟ壿嬜x)操作的查詢:

select?buffer_gets,sql_text

from?(select?sql_text,buffer_gets,

dense_rank()?over

(order?by?buffer_gets?desc)?buffer_gets_rank

from?v$sql)

where?buffer_gets_rank=5;

這種需要大量緩沖讀?。ㄟ壿嬜x)操作的SQL基本是大數(shù)據(jù)量且邏輯復(fù)雜的查詢中會(huì)遇到,對(duì)于這樣的大數(shù)據(jù)量查詢SQL語(yǔ)句更加需要持續(xù)的關(guān)注,并進(jìn)行優(yōu)化。

3、持續(xù)跟蹤有性能影響的SQL。

SELECT?*?FROM?(

SELECT?PARSING_USER_ID,EXECUTIONS,SORTS,

COMMAND_TYPE,DISK_READS,sql_text?FROM?v$sqlarea

ORDER?BY?disk_reads?DESC

)

WHERE?ROWNUM10

這個(gè)語(yǔ)句在SQL性能查看中用的比較多,可以明顯的看出哪些SQL會(huì)影響到數(shù)據(jù)庫(kù)性能。

本文主要介紹了使用SQL查詢方式查看oracle數(shù)據(jù)庫(kù)SQL性能的部分常用方法。此外還有許多工具也能實(shí)現(xiàn)SQL性能監(jiān)控,大家可以在網(wǎng)上搜索相關(guān)知識(shí)進(jìn)行學(xué)習(xí)。

轉(zhuǎn)載僅供參考,版權(quán)屬于原作者

如何查詢Oracle性能監(jiān)控

1.查看臨時(shí)表空間使用情況

Select

f.tablespace_name

,sum(f.bytes_free + f.bytes_used)

/1024/1024/1024 "total GB"

,sum((f.bytes_free + f.bytes_used) - nvl(p.bytes_used, 0))

/1024/1024/1024 "Free GB"

,sum(nvl(p.bytes_used, 0))

/1024/1024/1024 "Used GB"

from sys.v_$temp_space_header f, dba_temp_files d, sys.v_$temp_extent_pool p

where f.tablespace_name(+) = d.tablespace_name

and f.file_id(+) = d.file_id

and p.file_id(+) = d.file_id

group by

f.tablespace_name

2.查看使用臨時(shí)表空間的SQL

Select se.username,

se.sid,

su.extents,

su.blocks * to_number(rtrim(p.value)) as Space,

tablespace,

segtype,

sql_text

from v$sort_usage su, v$parameter p, v$session se, v$sql s

where p.name = 'db_block_size'

and su.session_addr = se.saddr

and s.hash_value = su.sqlhash

and s.address = su.sqladdr

order by se.username, se.sid

3.收縮臨時(shí)表空間

alter tablespace temp shrink space;

alter tablespace temp shrink tempfile ''

4.重建索引

alter index PK_CROSSRELATION rebuild;

5.查看表空間使用情況

SELECT UPPER(F.TABLESPACE_NAME) "表空間名",

D.TOT_GROOTTE_MB "表空間大小(M)",

D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空間(M)",

TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),'990.99') || '%' "使用比",

F.TOTAL_BYTES "空閑空間(M)",

F.MAX_BYTES "最大塊(M)"

FROM (SELECT TABLESPACE_NAME,

ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,

ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES

FROM SYS.DBA_FREE_SPACE

GROUP BY TABLESPACE_NAME) F,

(SELECT DD.TABLESPACE_NAME,

ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB

FROM SYS.DBA_DATA_FILES DD

GROUP BY DD.TABLESPACE_NAME) D

WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME

ORDER BY 1;

6.查詢表空間的總?cè)萘?/p>

select tablespace_name, sum(bytes) / 1024 / 1024 as MB

from dba_data_files

group by tablespace_name;

7. 查詢表空間使用率

select total.tablespace_name,

round(total.MB, 2) as Total_MB,考試大論壇

round(total.MB - free.MB, 2) as Used_MB,

round((1 - free.MB / total.MB) * 100, 2) || '%' as Used_Pct

from (select tablespace_name, sum(bytes) / 1024 / 1024 as MB

from dba_free_space

group by tablespace_name) free,

(select tablespace_name, sum(bytes) / 1024 / 1024 as MB

from dba_data_files

group by tablespace_name) total

where free.tablespace_name = total.tablespace_name;

8. 查找當(dāng)前表級(jí)鎖的SQL如下:

select sess.sid,

sess.serial#,

lo.oracle_username,

lo.os_user_name,

ao.object_name,

lo.locked_mode

from v$locked_object lo,

dba_objects ao,

v$session sess

where ao.object_id = lo.object_id and lo.session_id = sess.sid;

殺掉鎖表進(jìn)程:

alter system kill session '436,35123';

9.監(jiān)控當(dāng)前數(shù)據(jù)庫(kù)誰(shuí)在運(yùn)行什么SQL語(yǔ)句

select osuser, username, sql_text

from v$session a, v$sqltext b

where a.sql_address =b.address order by address, piece;

10.找使用CPU多的用戶session

select a.sid,spid,status,substr(a.program,1,40) prog, a.terminal,osuser,value/60/100 value

from v$session a,v$process b,v$sesstat c

where c.statistic#=12 and

c.sid=a.sid and

a.paddr=b.addr

order by value desc;

11.查看死鎖信息

SELECT (SELECT username

FROM v$session

WHERE SID = a.SID) blocker, a.SID, 'is blocking',

(SELECT username

FROM v$session

WHERE SID = b.SID) blockee, b.SID

FROM v$lock a, v$lock b

WHERE a.BLOCK = 1 AND b.request 0 AND a.id1 = b.id1 AND a.id2 = b.id2;

12.具有最高等待的對(duì)象

SELECT o.OWNER,o.object_name, o.object_type, a.event,

SUM (a.wait_time + a.time_waited) total_wait_time

FROM v$active_session_history a, dba_objects o

WHERE a.sample_time BETWEEN SYSDATE - 30 / 2880 AND SYSDATE

AND a.current_obj# = o.object_id

GROUP BY o.OWNER,o.object_name, o.object_type, a.event

ORDER BY total_wait_time DESC;

13.查看具有最高等待的對(duì)象

SELECT a.session_id, s.osuser, s.machine, s.program, o.owner, o.object_name,

o.object_type, a.event,

SUM (a.wait_time + a.time_waited) total_wait_time

FROM v$active_session_history a, dba_objects o, v$session s

WHERE a.sample_time BETWEEN SYSDATE - 30 / 2880 AND SYSDATE

AND a.current_obj# = o.object_id

AND a.session_id = s.SID

GROUP BY o.owner,

o.object_name,

o.object_type,

a.event,

a.session_id,

s.program,

s.machine,

s.osuser

ORDER BY total_wait_time DESC;

14.查看等待最多的SQL

SELECT a.program, a.session_id, a.user_id, d.username, s.sql_text,

SUM (a.wait_time + a.time_waited) total_wait_time

FROM v$active_session_history a, v$sqlarea s, dba_users d

WHERE a.sample_time BETWEEN SYSDATE - 30 / 2880 AND SYSDATE

AND a.sql_id = s.sql_id

AND a.user_id = d.user_id

GROUP BY a.program, a.session_id, a.user_id, s.sql_text, d.username;

15.顯示正在等待鎖的所有會(huì)話

SELECT * FROM DBA_WAITERS;

oracle性能查詢

select rownum as rank, a.*

from (select PARSING_SCHEMA_NAME RUN_USER, --執(zhí)行用戶

SQL_FULLTEXT, --SQL文本,全,帶格式

sql_text, --SQL文本前面部分

elapsed_Time , --單位是微秒,語(yǔ)句執(zhí)行完的總時(shí)間,包括CPU時(shí)間和等待時(shí)間

cpu_time , --CPU時(shí)間,語(yǔ)句運(yùn)行的時(shí)間

elapsed_Time - cpu_time wait_time,

trunc((elapsed_Time - cpu_time)*100/elapsed_Time,2) "wait_time_per%",--等待時(shí)間所占百分比

executions, --執(zhí)行次數(shù)

elapsed_Time/(executions+1) Per_Time, --每次執(zhí)行平均時(shí)間,

buffer_gets, --

disk_reads, --磁盤讀

hash_value, --SQL的hash_value,以備獲取完整SQL

USER_IO_WAIT_TIME,

SORTS --排序次數(shù)

from v$sqlarea t

where elapsed_time 20000 and PARSING_SCHEMA_NAME'SYS'

order by elapsed_time desc) a

where rownum 21

order by elapsed_time desc

如何檢查oracle數(shù)據(jù)庫(kù)性能

這種問(wèn)題要回答好要求知識(shí)比較全面。

1 從操作系統(tǒng)層次上看

看CPU 內(nèi)存 swqp(交換分區(qū))等使用率

2 從磁盤上看

主要看磁盤讀寫(xiě)??梢杂胐d測(cè)磁盤讀寫(xiě)的速度 也可以在業(yè)務(wù)高峰期檢測(cè)磁盤的速率。

3 從數(shù)據(jù)庫(kù)本身來(lái)看。

先要看數(shù)據(jù)庫(kù)各個(gè)參數(shù)的值 。 如sga的大小,process的大小,redo日志的個(gè)數(shù)與大小等這些關(guān)系到性能的參數(shù)是否設(shè)置合理。

長(zhǎng)期觀察的方式就是看各個(gè)時(shí)期的AWR報(bào)告。里面有各種性能指標(biāo),以及按執(zhí)行時(shí)間或資源排列的sql ,以及各種等待時(shí)間的排名。從這里面可以掌握數(shù)據(jù)庫(kù)的長(zhǎng)期的性能變化。

即時(shí)觀察的方式就是利用各種sql 查詢 數(shù)據(jù)庫(kù)在當(dāng)前時(shí)間的各個(gè)性能指標(biāo)(AWR報(bào)告里面的各種指標(biāo)也都是通過(guò)sql查詢出來(lái)的)

還有對(duì)數(shù)據(jù)庫(kù)整體的一個(gè)檢查:

如 表的大小,表是否需要分區(qū)而沒(méi)有分區(qū),索引是否創(chuàng)建,索引是否失效,開(kāi)發(fā)人員寫(xiě)的sql是否正確使用到了索引,頻繁使用的sql是否有綁定變量,有頻繁大批量增刪改的表是否存在高水位。。。

額 總之,這個(gè)話題涉及的知識(shí)非常多,盡可能多的學(xué)習(xí)一些東西,祝你好運(yùn)。


網(wǎng)站標(biāo)題:如何查看oracle性能 如何查看oracle數(shù)據(jù)庫(kù)性能
網(wǎng)頁(yè)網(wǎng)址:http://weahome.cn/article/hgicos.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部