首先看看什么时候使用动态性能视图:
(1)NOMOUNT
启动例程时,Oracle会打开参数文件,分配SGA并启动后台进程。因此,当例程处于NOMOUNT状态时,只能访问访问从SGA 中获取信息的动态性能视图。
(2)MOUNT
装在数据库时,Oracle根据初始化参数control_files打开所有的控制文件。当例程处于mount状态时,不仅可以访问从SGA中获取信息的动态性能视图,还可以访问从控制文件中获取信息的动态性能视图。
(3)OPEN
只有处于OPEN状态时,才能访问数据字典视图。
下面是常用的动态性能视图:
1、V$FIXED_TABLE
用于列出所有可用的动态性能视图和动态性能表
05:06:34 SQL> select name from v$fixed_table where name like 'V$%';
NAME
------------------------------
V$WAITSTAT
V$BH
V$GC_ELEMENT
V$CR_BLOCK_SERVER
V$CURRENT_BLOCK_SERVER
V$GC_ELEMENTS_WITH_COLLISIONS
V$FILE_CACHE_TRANSFER
V$TEMP_CACHE_TRANSFER
V$CLASS_CACHE_TRANSFER
V$INSTANCE_CACHE_TRANSFER
V$LOCK_ELEMENT
V$BSP
V$LOCKS_WITH_COLLISIONS
V$FILE_PING
V$TEMP_PING
V$CLASS_PING
2、v$instance
用于取得当前例程的详细信息
05:14:56 SQL> col host_name for a20
05:15:08 SQL> r
1* select instance_name ,host_name,status from v$instance
INSTANCE_NAME HOST_NAME STATUS
---------------- -------------------- ------------
orcl oraserv OPEN
3、v$sga
用于显示SGA主要组成部分(共享池、数据库高速缓存和重做日志缓冲区的尺寸)。
5:17:36 SQL> select * from v$sga;
NAME VALUE
-------------------- ----------
Fixed Size 1218992
Variable Size 79693392
Database Buffers 201326592
Redo Buffers 2973696
4、v$sgainfo
用于取得SGA更详细的信息
5:19:55 SQL> select * from v$sgainfo;
NAME BYTES RES
-------------------------------- ---------- ---
Fixed SGA Size 1218992 No
Redo Buffers 2973696 No
Buffer Cache Size 201326592 Yes
Shared Pool Size 71303168 Yes
Large Pool Size 4194304 Yes
Java Pool Size 4194304 Yes
Streams Pool Size 0 Yes
Granule Size 4194304 No
Maximum SGA Size 285212672 No
Startup overhead in Shared Pool 37748736 No
Free SGA Memory Available 0