设为首页 收藏本站
查看: 529|回复: 0

[经验分享] 11_Oracle_Admin_数据字典和动态性能表概述

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-9-24 09:23:48 | 显示全部楼层 |阅读模式
一、数据字典
wKiom1QhhfTwSvKoAAEATYHPRYw560.jpg
Data Dictionary 存储的是控制信息:如有多少张表,表的结构等等
Performance tables: 也称为DynamicPerformance tables,即动态性能表,反应了系统的性能特征,是动态的,以表的形式展示,但实际上展示的是内存信息。
PL/SQL packages:帮助完成数据库日常管理的程序。
Database event triggers:事件触发器,如插入数据时会触发相应的事件。
wKiom1QhhgjA0yDyAAIaNQg7h6c013.png
任何数据库都会有一个SYSTEM tablespace10g以后的数据库还必须有一个表空间叫SYSAUS(系统辅助空间),为SYS用户所拥有,由OracleServer直接管理,是只读的,即不能插入修改删除数据。
wKioL1QhhjnwRxMGAAG-JaqPWGI282.jpg
Base Table(基表)是核心,用户通常只和Views(视图)打交道。
[oracle@localhost ~]$ cd$ORACLE_HOME/rdbms/admin
[oracle@localhost admin]$ ls
1
2
3
4
a0902000.sql                      dbmsxpln.sql           prvthesh.plb
dbmsfspi.sql                      prvtbfut.plb           sql.bsq

dbmsxmlu.sql                      prvthdm.plb




基表由sql.bsq 这个脚本创建


[oracle@localhost admin]$ vimsql.bsq
1
2
3
4
5
6
7
8
rem
rem $Header: rdbms/admin/sql.bsq /main/606 2008/07/1417:25:59 vliang Exp $ sql.bsq
rem  MODIFIED
rem   huagli     06/09/08 - add ddst.bsq
rem   dvoss      01/03/07 - add dlmnr.bsq

dlmnr.bsq
ddst.bsq




视图由catalog.sql创建
wKiom1QhhlWQuXsHAAF6LwhsTjw258.jpg
Catproc.sql是用来创建一些OracleServer所需要的包。
wKioL1QhhomjdPE7AAHdFgHpjdM020.jpg
DD存储了数据库能够运行的核心信息,其重要性不言而喻。
wKiom1QhhnqCGGEeAAGzepiKDQM404.jpg
数据字典由Oracle Server 自动维护,它在执行DDL语句时会发生改变,如CREATETABLE创建了表,那么DD就会发生改变;而INSERT 语句不会改变表的结构,因此DD不会发生改变。
wKioL1QhhrGjxBrnAAInRdjc_UM161.jpg
DDView主要有三类:
_USER:存储了本用户数据库结构中的表、索引信息;
_ALL:除了用户自己建立的schema,还包括该用户被授权允许访问的所有表,索引,视图等;
_DBA:整个数据库范围内存储的信息。
这三类视图大体结构都相似,只有一些细微差别,关于这三类的详细信息,可以查阅联机文档Reference的相关章节:
wKioL1QhhsHDfxMsAANh40oukFY110.jpg
SQL> desc user_tables;
1
2
3
4
5
6
7
8
9
Name                                     Null?    Type
------------------------------------------------- -------------------
TABLE_NAME                                NOT NULLVARCHAR2(30)
TABLESPACE_NAME                                   VARCHAR2(30)
CLUSTER_NAME                                       VARCHAR2
...
READ_ONLY                                         VARCHAR2(3)
SEGMENT_CREATED                                    VARCHAR2(3)
RESULT_CACHE                                       VARCHAR2




SQL> desc all_tables;
1
2
3
4
5
6
7
8
9
10
11
12
Name                                     Null?    Type
------------------------------------------------- --------------
OWNER                                     NOT NULLVARCHAR2(30)
-- ALL_TABLES比USER_TABLES多了一列OWNER,以指明该表属于哪个用户
-- 但除此以外表机构几乎一致
TABLE_NAME                                NOT NULLVARCHAR2(30)
TABLESPACE_NAME                                   VARCHAR2(30)
CLUSTER_NAME                                       VARCHAR2
...
READ_ONLY                                         VARCHAR2(3)
SEGMENT_CREATED                                    VARCHAR2(3)
RESULT_CACHE                                       VARCHAR2




SQL> select table_namefrom dictionary;
1
2
3
4
5
6
7
8
...
TABLE_NAME
------------------------------
GV$_LOCK
DBA_HISTOGRAMS
DBA_APPLY_VALUE_DEPENDENCIES
DBA_APPLY_OBJECT_DEPENDENCIES
DICT



wKiom1Qhhv_zkz5iAAGk-8U23rM165.jpg
DICTIONAL, DICT_COLUMS, DBA_TABLES, DBA_INDEXES,DBA_TAB_COLUMNS, DBA_CONSTRAINTS, DBA_SEGMENTS, DBA_EXTENTS, DBA_TABLESPACES,DBA_DATA_FILES这些表相对而言比较重要,建议查阅联机文档Reference相关章节以获取详细信息。
wKiom1Qhhy_DQt7TAACy-YNuGrg283.jpg
wKioL1Qhh1ChLL6bAAEHOLP4v3o021.jpg
wKioL1Qhh1HiEsPxAACUNCajfTU492.jpg
wKiom1QhhzCyUywsAAC6zM3B0cM776.jpg
wKioL1Qhh1HjkulEAAC6g6cDYts282.jpg
wKiom1QhhzDjQ6ZWAACJmLnRvcM358.jpg
wKiom1QhhzGTq6zBAAG1CiaEBM4557.jpg
wKiom1QhhzHxMIPRAAO2Ai-fQKA382.jpg
wKiom1QhhzGCGrKyAAJdpKzepyQ108.jpg
wKioL1Qhh1PQfujHAAMpwZ2dq6I526.jpg

二、动态性能表

wKioL1Qhh-XAfXCpAAInCGWnRl4506.jpg
DD数据字典也是动态变化的,如用户的增加或减少,表的创建和删除等,但它的变化并不频繁。与之相对应的是动态性能表(DynamicPerformance Tables),它存储的是实时变化的数据,如有多少用户登陆了,有多少个活动的事物(Transaction),有多少commit的事物,多少rollback的事物等等。
动态性能表有以下特性:
1. 记录数据库当前的状态;
2. 数据库运行时会实时更新;
3. 它的信息来自于内存和控制文件;
4. 它主要用来监控和调优数据库;
5. 它的所有者是SYS;
6. 动态信息表的别名通常以V$开头

SQL> desc V$FIXED_TABLE;
1
2
3
4
5
6
Name                                     Null?    Type
------------------------------------------------- -------------------
NAME                                              VARCHAR2(30)
OBJECT_ID                                         NUMBER
TYPE                                              VARCHAR2(5)
TABLE_NUM                                          NUMBER




SQL> select * fromv$fixed_table;
1
2
3
4
5
6
NAME                            OBJECT_ID TYPE   TABLE_NUM
------------------------------ ---------- ----- ----------
GV$SQLCOMMAND                  4294953192 VIEW       65537
V$SQLCOMMAND                  4294953193 VIEW       65537
...
X$JOXMEX                       4294952376 TABLE      65537




这些信息只能被具有SYSDBA权限的用户查询,普通用户是无法查询的:

SQL> conn hr
1
2
Enter password:
Connected.




SQL> desc v$fixed_table;
1
2
3
ERROR:
ORA-04043: object "SYS"."V_$FIXED_TABLE"does not exist
-- 普通用户无法查看v$fixed_table



wKioL1QhiEOyV6HaAAE2lTRyg0g648.png


V$SPPARAMETER中存储了初始化参数信息,如果没有定义启动数据库的参数,则启动数据库时会使用V$SPPARAMETER中的默认值。
V$PARAMETER存储的是内存中的参数信息。

SQL> desc v$controlfile
1
2
3
4
5
6
7
Name                                     Null?    Type
------------------------------------------------- ------------------
STATUS                                            VARCHAR2(7)
NAME                                              VARCHAR2(513)
IS_RECOVERY_DEST_FILE                              VARCHAR2(3)
BLOCK_SIZE                                         NUMBER
FILE_SIZE_BLKS                                     NUMBER




SQL> select * fromv$controlfile

1
2
3
4
5
STATUS  NAME                         IS_ BLOCK_SIZE   FILE_SIZE_BLKS
----------- ---------------------------------------------------- ---
      /oracle/oradata/orcl/control01.ctl     NO       16384    594
  
    /oracle/flash_recovery_area/orcl/control02.ctl  NO  16384  594




作为一个熟练的DBA,建议记住一些常用的动态性能表的作用和结构。

wKioL1QhiJrBlGPyAAIETQS3kDM266.jpg
手动创建数据库时曾执行过一些脚本,这些脚本是数据库管理脚本,存放在$ORACLE_HOME/rdbms/admin中,联机文档Reference中对这些脚本有比较相信的介绍:

wKiom1QhiJfRpJsBAAFM2t-8-5U651.jpg

这些脚本的信息是可以分类的,其中以CAT开头的主要用来创建数据字典;以DBMSPRVT开头的包都是用来增强数据库功能的包;UTL开头的脚本是一些工具包。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-25269-1-1.html 上篇帖子: oracle表注释与查询提示(result_cache_mode)的关系 下篇帖子: oracle存储过程简单从ODS抽取数据_面向对象思想 动态
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表