⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oracle开发技巧-10.htm

📁 微软数据库开发梦工场多媒体教学-oracle篇.rar,是多媒体教学的
💻 HTM
字号:
<body bgcolor="#000000">
<p><font color="#FFFFFF"> <font color="#009900">ORACLE应用经验(2)</font> <br>
  </font></p>
<p><font color="#FFFFFF">------谁正在访问数据库?<br>
  Select c.sid, c.serial#,c.username,a.object_id,b.object_name,<br>
  c.program,c.status,d.name,c.osuser <br>
  from v$Locked_object a,<br>
  All_objects b,<br>
  v$session c,<br>
  audit_actions d<br>
  where a.object_id=b.object_id<br>
  and a.session_id =c.sid(+)<br>
  and c.command=d.action; </font></p>
<font color="#009900"><p><font color="#FFFFFF">alter system kill session '&amp;1,&amp;2';<br>
  <br>
  Select a.sid,a.serial#,a.username,a.status,a.program,b.name,a.osuser<br>
  from v$session a,audit_actions b <br>
  where a.command=b.action<br>
  And username='&amp;1';<br>
  ------谁被锁住?<br>
  Select a.sid,a.serial#,a.username,A.LOCKWAIT,a.status,a.program,b.name<br>
  from v$session a,audit_actions b <br>
  where a.command=b.action<br>
  AND LOCKWAIT IS NOT NULL;<br>
  ------谁在锁表?<br>
  Select a.sid,a.serial#,a.username,A.LOCKWAIT,a.status,a.program,b.name<br>
  from v$session a,audit_actions b <br>
  where a.command=b.action<br>
  AND STATUS='ACTIVE';</font></p>
<p><font color="#FFFFFF">Select sid, serial#, object_name, row_wait_block#,<br>
  row_wait_row#, row_wait_file#<br>
  from all_objects, v$session<br>
  where row_wait_obj#=object_id and type='USER'<br>
  and lockwait is not null ;</font></p>
<p><font color="#FFFFFF">Select sl.username, sl.sid, sl.serial#<br>
  from v_$lock l1, v$session s1<br>
  where exists (select * from v_$lock l2, v$session s2<br>
  where l2.sid=s2.sid and l2.id1=l1<br>
  and s2.lockwait=l2.kaddr<br>
  and request=0<br>
  and l1.sid=s1.sid) ;</font></p>
<p><font color="#FFFFFF">select count(*) from v$session;<br>
  select count(*) from sys.v_$process;<br>
  select count(*) from sys.v_$transaction;</font></p>
<p><font color="#FFFFFF"> ZYP_35.98</font></p>
<p><font color="#FFFFFF">------查看哪些包要固定<br>
  COLUMN OWNER FORMAT A10<br>
  Select owner, name, type,<br>
  source_size+code_size+parsed_size+error_size BYPES<br>
  from dba_object_size<br>
  where type='PACKAGE BODY' ORDER BY 4 DESC ;</font></p>
<p><font color="#FFFFFF">------查看一个用户拥有哪些表空间的实体信息:<br>
  Select tablespace_name, owner, segment_name,segment_type<br>
  from dba_segments<br>
  where owner-'SyS'<br>
  and segment_type_-'ROLLBACK'<br>
  order by tablespace_name, owner, segment_name ;</font></p>
<p><font color="#FFFFFF">break on owner on segment_name<br>
  COLUMN segment_name FORMAT A15<br>
  cOLUMN tablespace_name FORMAT A15<br>
  COLUMN file_name FORMAT A20<br>
  SELECT A.owner, a.segment_name, b.tablespace_name, b.file_name,<br>
  sum(a.bytes) bytes<br>
  from dba_extents a, dba_data_files b<br>
  where a.file_id-b.file_id group by a.owner, a.segment_name,<br>
  b.tablespace_name, b.file_name ;</font></p>
<p><font color="#FFFFFF">------看内存缓冲区使用效率的指数是命中率HITS:<br>
  Hits=Logical_reads/(logical_reads+physical_reads)<br>
  其中:logical_reads=db_block_gets+consistent_reads</font></p>
<p><font color="#FFFFFF">select cur.value db, con.value con, phy.value phy,<br>
  (cur.value+con.value)/cur.value+con.value+phy.value)*100 HITS<br>
  from v$sysstat cur, v$sysstat con, v$sysstat phy<br>
  where CUR.NAME='db block gets' AND<br>
  CON.NAME='consistent gets' AND<br>
  PHY.NAME='physical reads' ;</font></p>
<p><font color="#FFFFFF">------如何检测ROLLBACK SEGMENT竞争?<br>
  select class, count from v$waitstat<br>
  where class in<br>
  ('system undo header', 'system undo block',<br>
  'undo header', 'undo block') ;</font></p>
<p><font color="#FFFFFF">select sum(value) from v$sysstat where name in<br>
  ('db block gets', 'consistents gets') ;</font></p>
<p><font color="#FFFFFF"> 若count/sum(value)大于1%,则应考虑增加ROLLBACK SEGMENT</font></p>
<p><font color="#FFFFFF">------查看有事务在哪几个回退段中:<br>
  COLUMN u FORMAT A15<br>
  COLUMN s FORMAT A15<br>
  COLUMN s FORMAT A80<br>
  select osuser o, username u, segment_name s, sa.sql_text<br>
  from v$session s, v$transaction t, dba_rollback_segs r, v$sqlarea sa<br>
  where s.taddr=t.addr and t.sidusn=r.segmant_id(+)<br>
  and s.sql_address=sa.address(+) ;<br>
  <br>
  <br>
</font></p>
</font>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -