《SQL 21日自学通(V3.0)(PDF格式)》第114章


3 FROM SYS。DBA_ROLLBACK_SEGS; 
OUTPUT 
OWNER SEGMENT_NAME 
SYS SYSTEM 
SYS R0 
SYS R01 
SYS R02 
SYS R03 
SYS R04 
SYS R05 
348 
…………………………………………………………Page 349……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
分析 
这个例子中通过运行一个简单的查询列出的所有 ROLLBACK 段的名字 其实它还有 
更多的对你有用的数据 
动态执行视图 
ORACLE 的数据库管理经常会访问动态执行视图因为它对提供了比其它的数据字典视 
图更为详细的对内部性能的量度 在 DBA 视图中也包括了一些相同的信息 
这些视图涉及到了相当多的细节 — — 依据特定的解释器而定 这一部分给出在数据字 
典中包括的大体上的信息 
会话信息 
对 VSEEEION 视图执行 DESCRIBE 在第 20 天的 SQL*PLUS 中会详细讨论 命 
令 你可以看到这个视图中的详细内容 
INPUT 
SQL》 DESCRIBE VSESSION 
OUTPUT 
Name Null? Type 
SADDR RAW(4) 
SID NUMBER 
SERIAL# NUMBER 
AUDSID NUMBER 
PADDR RAW(4) 
USER# NUMBER 
USERNAME VARCHAR2(30) 
MAND NUMBER 
TADDR VARCHAR2(8) 
LOCKWAIT VARCHAR2(8) 
STATUS VARCHAR2(8) 
SERVER VARCHAR2(9) 
SCHEMA# NUMBER 
SCHEMANAME VARCHAR2(30) 
OSUSER VARCHAR2(15) 
349 
…………………………………………………………Page 350……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
Name Null? Type 
PROCESS VARCHAR2(9) 
MACHINE VARCHAR2(64) 
TERMINAL VARCHAR2(10) 
PROGRAM VARCHAR2(48) 
TYPE VARCHAR2(10) 
SQL_ADDRESS RAW(4) 
SQL_HASH_VALUE NUMBER 
PREV_SQL_ADDR RAW(4) 
PREV_HASH_VALU NUMBER 
E 
MODULE VARCHAR2(48) 
MODULE_HASH NUMBER 
ACTION VARCHAR2(32) 
ACTION_HASH NUMBER 
CLIENT_INFO VARCHAR2(64) 
FIXED_TABLE_SEQ NUMBER 
UENCE 
ROW_WAIT_OBJ# NUMBER 
ROW_WAIT_FILE# NUMBER 
ROW_WAIT_BLOC NUMBER 
K# 
ROW_WAIT_ROW# NUMBER 
LOGON_TIME DATE 
LAST_CALL_ET NUMBER 
如果你想得到关于当前数据库的会话信息 你可以对 VSESSION 写像下边这样的一 
个查询 
INPUT/OUTPUT 
SQL》 SELECT USERNAME; MAND; STATUS 
2 FROM VSESSION 
3 WHERE USERNAME IS NOT NULL 
USERNAME MAND STATUS 
TWILLIAMS 3 ACTIVE 
JSMITH 0 INACTIVE 
分析 
TWILLIAMS 已经登录到了数据库中并且对数据进行了选择 这可以从他执行了命令 
350 
…………………………………………………………Page 351……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
3 看出来 
JSMITH 只不过是登录到了数据库中 他的会话不是处于活动状态的 他也没有执行 
任何命令 你可以参考你的数据库文档以发现在数据字典中都有哪些命令的定义 这些命 
令包括 SELECT INSERT UPDATE DELETE CREATE TABLE 和 DROP TABEL 
运行统计 
也可以对用户的会话进行执行统计 它比今天讨论的其它视图更加依赖于具体的解释 
器 
执行的统计包括如数据库读写速率 对表的成功命中 系统全局区域的使用 内存缓 
冲的使用 ROLLBACK 的详细信息 事务历史记录的详细信息以及表的锁定和等待情况 
这几乎全是底层知识 
计划表 
计划表是 ORACLE 的 SQL 语言工具所使用的默认表 EXPLAIN PLAN 见第 15 天 
表是由被称为 UTLXPLAN。SQL 的 ORACLE 脚本所创建的 当软件被安装时拷贝到的服务 
器上 数据是由 EXPLAIN PLAN 工具来产生 
总结 
尽管具体的数据字典在不同的解释器中是不同的 但这些概念适用于所有的关系数据库系 
统 你必须遵守你的数据库管理系统的语法和规则 但是今天的例子将会给你对数据字典 
进行查询使用的信息 which populates the PLAN table with information about the object being 
accessed and the steps in the execution plan of an SQL statement。 
注 对数据字典进行探险是很危险的 你需要进行更有效的学习才行 
问与答 
问 为什么在数据字典中我应该使用表和视图 
答 使用?
小说推荐
返回首页返回目录