1.Data Dictionary
- During database creation , the Oracle server creates additional object structureswithin the data files.
- 当数据库创建时, 就会自动在 data files 中创建一些其他结构. (安装完数据库后要安装的脚本)
- Data dictionary tables. ( 只读, 描述数据库和其对象, 包括 基本表和数据视图 , 属于用户 sys , 在 system 表空间中)
- 基本表 : 存储数据库的内部信息, 不要使用 DML 语言操作基本表, 除了 AUD$ table. ( 基本上不证明打交道 )
- Store description of database. 最底层的 table , are the first object created in any Oracle database. Created with create database. ( sql.bsq script ) 这部分就是创建完数据库之后,在运行该脚本实现的
- 数据视图 : 一般是基本表的汇总信息 ( 这个更有用一点 )
- Created using catalog.sql script
- Data Dictionary Contents
- Logical and physical database structure.
- Definitions and space allocations of objects
- Integrity constraints
- Users
- Roles
- Privileges
- Auditing
- 作用
- 数据库需要通过数据字典查找一些信息(Users,Schema objects, Storage structures )
- 当出现 DDL 操作时, 系统会自动改变数据字典的内容.
- 用户或者是DBA可以查询信息, data dictionary 作为只读模式.
- 种类
- DBA_前缀 : 查看整个数据库内容, 需要DBA权限或者是查询任何 table的权限的用户. 例如 : dba_objects . any user granted the system privilegeSELECT ANY TABLEcan query the DBA_prefiexed views
- ALL_前缀 : 当前用户可以读取的内容, 例如 : all_objects ; ( 所有用户的对象 )
- USER_前缀 : 只是针对当前用户的 private environment , 是 ALL_前缀的子集, 例如 user_objects . ( 更多的关心 )
- 数据字典回答什么
- Was the object ever created ?
- What is the object a part of ?
- who owns the object ?
- What privileges do users have ?
- What restrictions are on the object ?
- 基本表 : 存储数据库的内部信息, 不要使用 DML 语言操作基本表, 除了 AUD$ table. ( 基本上不证明打交道 )
- Dynamic performance tables ( 记录当前数据库的动态信息 ) 也很有用
- 动态改变, 例如DML操作
- 存取信息通过 , memory , control file
- DBA利用 dynamic views to monitor and tune the database.
- Dynamic views are owned by sys user
- DML is not allowed
- 动态视图回答什么
- Is the object online and available ?
- Is the object open ?
- What locks are being held ?
- Is the session active ?
- 比如有多少个用户登陆?
- 有多少个 transaction 等等?
- 存取通过 内存和 control file
- 对调优很有用
- owned by sys user
- V$ 开头
- v$ filed_table 是它的索引表
- Data dictionary tables. ( 只读, 描述数据库和其对象, 包括 基本表和数据视图 , 属于用户 sys , 在 system 表空间中)
2.查询数据字典和Dynamic performance views
- General Overview ->整体情况
- DICTIONARY , DICT_COLUMNS
- Schema objects -> schema 情况
- DBA_TABLES , DBA_INDEXES, DBA_TAB_COLUMNS, DBA_CONSTRAINTS
- Space allocation -> 分配空间情况
- DBA_SEGMENTS, DBA_EXTENTS
- Database structure -> 结构情况
- DBA_TABLESPACES, DBA_DATA_FILES
个人总结
本章只是介绍一些数据字典, 不可能一下子记住所有的数组字典的内容.