Oracle 常用的一些操作(续…)

复制代码 代码如下:select session_id sid,
owner, name, type, mode_held held, mode_requested request

1.翻看会话“锁定”的富有指标!

from DBA_DDL_LOCKS

            select session_id sid, owner, name, type, mode_held held,
mode_requested request

where session_id=(select sid from V$mystat where rownum=1)

            from DBA_DDL_LOCKS

/(注:owner 列是所锁定目的的持有者State of Qatar

            where session_id=(select sid from V$mystat where rownum=1)

            / (注:owner 列是所锁定目的的主人卡塔尔

2.总消耗费时间间最多的前10条SQL语句!

           select sql_id,child_number,sql_text,elapsed_time

           from(select
sql_id,child_number,sql_text,elapsed_time,cpu_time,disk_reads,rank()over(order
by elapsed_time desc) as elapsed_rankfrom V$sql)

           where elapsed_rank<=10

           /      

3.报告警察方功能:能够辨识出会忽视可能吞掉错误的老大!

          alter session set plsql_warnings=’enable:all’

4.  查看缓冲区中生成的”redo size”的大小

          create or replace function  get_ stat_val (p_name in
varchar2) return number

               is

                      l_val number;

               begin

                      select b.value

                      into l_val

                      from v$statname a,v$mystat b

                      where a.statistic#=b.statistic# and
a.name=p_name;

                      return l_val;

             end;

5.查看已用”undo”块的个数

         select used_ublk

         from v$transaction

         where addr=(select taddr

                             from v$session

                             where sid=(select sid

                                              from v$mystat

                                              where rownum=1)

                            )

         /

6.用数码词典视图查看对象的列名等新闻       

          select name,…

          from sys.col$

          where obj#=(select object_id

                              from dba_objects

                              where object_name=’EMPLOYEES’

                                         and owner=’HR’)

          /(或 from user_objects where objects_name=’
‘查看当前顾客对象的列音讯)

7.查看表空间中已分配和未分配的上空     

         selectb.tablespace_name,mbytes_alloc,mbytes_free

         from(select round(sum(bytes)/1024/1024)
mbytes_free,tablespace_name

                   from dba_free_space

                   group by tablespace_name) a,

                (select round(sum(bytes)/1024/1024)
mbytes_alloc,tablespace_name

                   from dba_data_files

                   group by tablespace_name) b

        where a.tablespace_name(+)=b.tablespace_name

                  and b.tablespace_name=’USERS’

          /