网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.访问多个SQL Server数据库.
.分享:我的oracle9i学习笔记(一).
.数据库迁移中的Web翻页优化实例.
.数据库中如何使用SQL查询连续号码.
.Oracle数据库技术(13).
.ORACLE用SPFILE无法启动.
.利用errorstack event解决问题.
.Oracle 8i中字符集乱码解决.
.初学者必读:Oracle数据库安装错.
.tr的使用方法.
.Oracle逻辑备份的SH文件.
.用SQL进行多表查询.
.如何改变当前路径下所有目录和文.
.关于Oracle进程结构及后台进程简.
.Oracle数据库技术(39).
.用OMF来简化数据库管理.
.甲骨文全力加速亚太地区“OFF SA.
.连接数据库的第一步:C#与Oracl.
.轻松学习贯穿Oracle的25条基本知.
.在Oracle里设置访问多个SQL Serv.

ORACLE应用经验(2)

发表日期:2008-2-9



  ------谁正在访问数据库?
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';
------谁被锁住?
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;
------谁在锁表?
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 ;

------查看一个用户拥有哪些表空间的实体信息:
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 ;

------看内存缓冲区使用效率的指数是命中率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' ;

------如何检测ROLLBACK SEGMENT竞争?

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%,则应考虑增加ROLLBACK SEGMENT

------查看有事务在哪几个回退段中:
COLUMN u FORMAT A15
COLUMN s FORMAT A15
COLUMN s 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(+) ;

上一篇:Oracle性能究极优化 中 人气:697
下一篇:ORACLE应用经验(1) 人气:584
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐