ORACLE應(yīng)用經(jīng)驗(yàn)(2)
更新時(shí)間:2007年03月06日 00:00:00 作者:
正在看的ORACLE教程是:ORACLE應(yīng)用經(jīng)驗(yàn)(2)。------誰(shuí)正在訪問數(shù)據(jù)庫(kù)?
Select c.sid, c.serial#,c.username,a.object_id,b.object_name,
c.program,c.status,d.name,c.osuser
from v$Locked_object a,
All_objects b,
v$session c,
audit_actions d
where a.object_id=b.object_id
and a.session_id =c.sid(+)
and c.command=d.action;
alter system kill session '&1,&2';
Select a.sid,a.serial#,a.username,a.status,a.program,b.name,a.osuser
from v$session a,audit_actions b
where a.command=b.action
And username='&1';
------誰(shuí)被鎖住?
Select a.sid,a.serial#,a.username,A.LOCKWAIT,a.status,a.program,b.name
from v$session a,audit_actions b
where a.command=b.action
AND LOCKWAIT IS NOT NULL;
------誰(shuí)在鎖表?
Select a.sid,a.serial#,a.username,A.LOCKWAIT,a.status,a.program,b.name
from v$session a,audit_actions b
where a.command=b.action
AND STATUS='ACTIVE';
Select sid, serial#, object_name, row_wait_block#,
row_wait_row#, row_wait_file#
from all_objects, v$session
where row_wait_obj#=object_id and type='USER'
and lockwait is not null ;
Select sl.username, sl.sid, sl.serial#
from v_$lock l1, v$session s1
where exists (select * from v_$lock l2, v$session s2
where l2.sid=s2.sid and l2.id1=l1
and s2.lockwait=l2.kaddr
and request=0
and l1.sid=s1.sid) ;
select count(*) from v$session;
select count(*) from sys.v_$process;
select count(*) from sys.v_$transaction;
ZYP_35.98
------查看哪些包要固定
COLUMN OWNER FORMAT A10
Select owner, name, type,
source_size+code_size+parsed_size+error_size BYPES
from dba_object_size
where type='PACKAGE BODY' ORDER BY 4 DESC ;
------查看一個(gè)用戶擁有哪些表空間的實(shí)體信息:
Select tablespace_name, owner, segment_name,segment_type
from dba_segments
where owner-'SyS'
and segment_type_-'ROLLBACK'
order by tablespace_name, owner, segment_name ;
break on owner on segment_name
COLUMN segment_name FORMAT A15
cOLUMN tablespace_name FORMAT A15
COLUMN file_name FORMAT A20
SELECT A.owner, a.segment_name, b.tablespace_name, b.file_name,
sum(a.bytes) bytes
from dba_extents a, dba_data_files b
where a.file_id-b.file_id group by a.owner, a.segment_name,
b.tablespace_name, b.file_name ;
------看內(nèi)存緩沖區(qū)使用效率的指數(shù)是命中率HITS:
Hits=Logical_reads/(logical_reads+physical_reads)
其中:logical_reads=db_block_gets+consistent_reads
select cur.value db, con.value con, phy.value phy,
(cur.value+con.value)/cur.value+con.value+phy.value)*100 HITS
from v$sysstat cur, v$sysstat con, v$sysstat phy
where CUR.NAME='db block gets' AND
CON.NAME='consistent gets' AND
PHY.NAME='physical reads' ;
------如何檢測(cè)ROLLBACK SEGMENT競(jìng)爭(zhēng)?
select class, count from v$waitstat
where class in
('system undo header', 'system undo block',
'undo header', 'undo block') ;
select sum(value) from v$sysstat where name in
('db block gets', 'consistents gets') ;
若count/sum(value)大于1%,則應(yīng)考慮增加ROLLBACK SEGMENT
------查看有事務(wù)在哪幾個(gè)回退段中:
COLUMN u FORMAT A15
COLUMN s FORMAT A15
COLUMN s 正在看的ORACLE教程是:ORACLE應(yīng)用經(jīng)驗(yàn)(2)。FORMAT A80
select osuser o, username u, segment_name s, sa.sql_text
from v$session s, v$transaction t, dba_rollback_segs r, v$sqlarea sa
where s.taddr=t.addr and t.sidusn=r.segmant_id(+)
and s.sql_address=sa.address(+) ;
Select c.sid, c.serial#,c.username,a.object_id,b.object_name,
c.program,c.status,d.name,c.osuser
from v$Locked_object a,
All_objects b,
v$session c,
audit_actions d
where a.object_id=b.object_id
and a.session_id =c.sid(+)
and c.command=d.action;
alter system kill session '&1,&2';
Select a.sid,a.serial#,a.username,a.status,a.program,b.name,a.osuser
from v$session a,audit_actions b
where a.command=b.action
And username='&1';
------誰(shuí)被鎖住?
Select a.sid,a.serial#,a.username,A.LOCKWAIT,a.status,a.program,b.name
from v$session a,audit_actions b
where a.command=b.action
AND LOCKWAIT IS NOT NULL;
------誰(shuí)在鎖表?
Select a.sid,a.serial#,a.username,A.LOCKWAIT,a.status,a.program,b.name
from v$session a,audit_actions b
where a.command=b.action
AND STATUS='ACTIVE';
Select sid, serial#, object_name, row_wait_block#,
row_wait_row#, row_wait_file#
from all_objects, v$session
where row_wait_obj#=object_id and type='USER'
and lockwait is not null ;
Select sl.username, sl.sid, sl.serial#
from v_$lock l1, v$session s1
where exists (select * from v_$lock l2, v$session s2
where l2.sid=s2.sid and l2.id1=l1
and s2.lockwait=l2.kaddr
and request=0
and l1.sid=s1.sid) ;
select count(*) from v$session;
select count(*) from sys.v_$process;
select count(*) from sys.v_$transaction;
ZYP_35.98
------查看哪些包要固定
COLUMN OWNER FORMAT A10
Select owner, name, type,
source_size+code_size+parsed_size+error_size BYPES
from dba_object_size
where type='PACKAGE BODY' ORDER BY 4 DESC ;
------查看一個(gè)用戶擁有哪些表空間的實(shí)體信息:
Select tablespace_name, owner, segment_name,segment_type
from dba_segments
where owner-'SyS'
and segment_type_-'ROLLBACK'
order by tablespace_name, owner, segment_name ;
break on owner on segment_name
COLUMN segment_name FORMAT A15
cOLUMN tablespace_name FORMAT A15
COLUMN file_name FORMAT A20
SELECT A.owner, a.segment_name, b.tablespace_name, b.file_name,
sum(a.bytes) bytes
from dba_extents a, dba_data_files b
where a.file_id-b.file_id group by a.owner, a.segment_name,
b.tablespace_name, b.file_name ;
------看內(nèi)存緩沖區(qū)使用效率的指數(shù)是命中率HITS:
Hits=Logical_reads/(logical_reads+physical_reads)
其中:logical_reads=db_block_gets+consistent_reads
select cur.value db, con.value con, phy.value phy,
(cur.value+con.value)/cur.value+con.value+phy.value)*100 HITS
from v$sysstat cur, v$sysstat con, v$sysstat phy
where CUR.NAME='db block gets' AND
CON.NAME='consistent gets' AND
PHY.NAME='physical reads' ;
------如何檢測(cè)ROLLBACK SEGMENT競(jìng)爭(zhēng)?
select class, count from v$waitstat
where class in
('system undo header', 'system undo block',
'undo header', 'undo block') ;
select sum(value) from v$sysstat where name in
('db block gets', 'consistents gets') ;
若count/sum(value)大于1%,則應(yīng)考慮增加ROLLBACK SEGMENT
------查看有事務(wù)在哪幾個(gè)回退段中:
COLUMN u FORMAT A15
COLUMN s FORMAT A15
COLUMN s 正在看的ORACLE教程是:ORACLE應(yīng)用經(jīng)驗(yàn)(2)。FORMAT A80
select osuser o, username u, segment_name s, sa.sql_text
from v$session s, v$transaction t, dba_rollback_segs r, v$sqlarea sa
where s.taddr=t.addr and t.sidusn=r.segmant_id(+)
and s.sql_address=sa.address(+) ;
相關(guān)文章
oracle刪除數(shù)據(jù)但表空間占用率沒有減小的情況
這篇文章主要介紹了oracle刪除數(shù)據(jù)但表空間占用率沒有減小的情況,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
PL/SQL Developer連接64位的Oracle圖文教程
這篇文章主要為大家詳細(xì)介紹了PL/SQL Developer連接64位的Oracle圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
SQL?錯(cuò)誤?[1722]?[42000]:?ORA-01722:?無(wú)效數(shù)字解決辦法
這篇文章主要給大家介紹了關(guān)于SQL?錯(cuò)誤?[1722]?[42000]:?ORA-01722:?無(wú)效數(shù)字的解決辦法,ORA-01722是一個(gè)錯(cuò)誤代碼,當(dāng)試圖將一個(gè)字符串轉(zhuǎn)換為數(shù)字,但字符串無(wú)法轉(zhuǎn)換為數(shù)字時(shí)會(huì)出現(xiàn)這個(gè)錯(cuò)誤,需要的朋友可以參考下2024-06-06
檢查Oracle數(shù)據(jù)庫(kù)版本的7種方法匯總
在Oracle數(shù)據(jù)庫(kù)的發(fā)展中,數(shù)據(jù)庫(kù)一直處于不斷升級(jí)狀態(tài),下面這篇文章主要給大家介紹了關(guān)于檢查Oracle數(shù)據(jù)庫(kù)版本的7種方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-10-10
oracle正則表達(dá)式regexp_like的用法詳解
本篇文章是對(duì)oracle正則表達(dá)式regexp_like的用法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
CMD操作oracle數(shù)據(jù)導(dǎo)庫(kù)過程圖解
這篇文章主要介紹了CMD操作oracle數(shù)據(jù)導(dǎo)庫(kù)過程圖解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
利用PL/SQL從Oracle數(shù)據(jù)庫(kù)導(dǎo)出和導(dǎo)入數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了利用PL/SQL從Oracle數(shù)據(jù)庫(kù)導(dǎo)出數(shù)據(jù)和導(dǎo)入數(shù)據(jù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03

