Oracle Study Notes: Data Dictionary

Source: Internet
Author: User

Oracle Data Dictionary

Let me give you an example of the dictionary. What do we rely on for reading and writing? You will say: Word! Then I ask you, what is your word ?! At this time, you can only explain the statements in the dictionary (Xinhua Dictionary, Kangxi Dictionary, and commentary. Further, can you write a dictionary and redefine each word as soon as possible? Obviously, it is impossible. In that case, the world would have been messy! Interestingly, even if the dictionary still uses other words to explain each word, It will be explained cyclically .....???????? In fact, this is only the consistency of the form of expression. There will never be an endless loop in the content, that is, tie Ding stipulates that some of the most basic semantics cannot be divided into basic words! Other words are just new words that are constantly being interpreted in a variety of ways!

This is the case:The data dictionary in the database is the object that explains the database objects. Therefore, the data dictionary is also called metadata-metadata. They cannot be added, deleted, or modified by users. They can only be viewed and used. Data dictionaries also have basic dictionary tables that cannot be further divided. Others are mainly views, views, and synonyms, however, we can only use these views, view views, and synonyms.Why don't you let me see the basic table in Oracle "? Let you see, do you understand? Then again, it really makes you understand that Oracle is not close early ?! This is a problem of history, compatibility, efficiency, management, security, and habits.

Why Does Oracle provide so many data dictionaries? You said that if you build a house, it would be nice to use ready-made bricKs, cement, steel and other building materials, or should you first remove parts from an old house? But sometimes there are highly integrated semi-finished products that are also very good, but there is no standard to grasp this thing, so we have to be benevolent and wise. Oracle is constantly adapting to changing public opinions!



Oracle Data Dictionary is divided from two aspects:

    1. Static and Dynamic indicate whether the dictionary information is updated in real time, whether it can be reproduced in stages, or whether it is controllable. Static is mainly applicable to user mode objects and is used in open databases. Dynamic is mainly the memory structure information provided by database instances. They do not even have the table structure stored in the database, it is a memory table provided by the Oracle instance, and the available dictionary tables are different at different stages of the Instance startup. This also leads to a somewhat different way of accessing the two: the dynamic dictionary can only use a simple select where. To use other things, you must first dump the bitwise entity table; static does not have these restrictions!
    2. Privileges: Permission and security management. Static DBAs _, all _, and user _ define the content access permission range from the perspective of user ID security, which leads to a large number of data dictionary views and synonyms; similar to dynamic V _ $, V $, GV _ $, and GV $, the content access permission range is defined from the perspective of instance id security, and a large number of data dictionary views and synonyms are also introduced!

 

Derivative relationship of Oracle Data Dictionary

OracleProgramFixed table --> fixed view: for example, V $ instance ---- Fixed table for this layerIs disabled for user access

ORACLE:X $ table --> GV $ View --> V $ View -- this layer is disabled for user access.

|

GV _ $ view V _ $ View

|

GV $ synonym v $ Synonym

ORACLE: * $ base table --> DBA _ * View --> All _ * View --> User View ---- The table at this layer is disabled for user access.

The all _ * view and user view are actually defined from the * $ basic table. The logical range is as follows:

 

When accessing data, the Oracle access view takes precedence over the synonym.


 

Basic data dictionary you absolutely use

  1. Dictionary [dict] -- lists all data dictionaries. There are 1378 in Oracle10g!
  2. Dict_columns -- list all data dictionary Columns
  3. V $ fixed_table -- lists all dynamic tables and views. The fixed here should be understood as the built-in and inherent
  4. V $ fixed_view_definition -- lists the original definitions of all dynamic views. The fixed here should be understood as an inherent
  5. V $ process -- Oracle process information, ADDR
  6. V $ session -- Oracle session information. paddr corresponds to the ADDR of V $ process. process refers to the processid of the client's OS, * _ SQL _ *, row_wait_row #, event wait event description, SQL _trace
  7. V $ SQL -- SQL cached by Oracle
  8. V $ sgainfo, V $ sgastat, and V $ pgastat -- fixed and dynamic composition of SGA
  9. V $ sysem_parameter -- all Oracle system initialization parameters, excluding hidden Parameters
  10. V $ sysem_event -- statistics of Oracle instance system and other events
  11. V $ thread -- the current lgwr thread information, which can obtain a lot of redo-related information. Sequence #-1
  12. V $ version and V $ option -- Oracle version and component information
  13. V $ open_cursor -- all cursor opened by Oracle
  14. V $ object_dependency -- Dependency of all objects during Oracle system running
  15. V $ bgprocess -- all possible background processes in Oracle, whether or not they are running
  16. V $ datafile, V $ datafile_header -- datafile information of Oracle
  17. V $ log, V $ logfile, V $ log_history -- online redo information of Oracle and archived historical information




Other common ORACLE data dictionaries (constantly collecting and sorting ......)

    1. V $ session_event, V $ session_wait, V $ session_wait_class, V $ session_wait_history -- current session wait events, summary, and historical statistics
    2. V $ SQL, V $ SQL _plan, V $ SQL _trace, V $ SQL _text, V $ SQL _cursor, V $ sqlstats, V $ sqlarea -- SQL text in the SQL Cache
    3. V $ process_memory -- memory usage details of Oracle Processes
    4. V $ system_wait_class -- Summary of Oracle system wait events
    5. V $ Database
    6. V $ instance
    7. V $ tablespace -- basic information about the tablespace obtained from the Control File
    8. V $ thread -- lgwr thread information, which can obtain a lot of redo-related information

 

 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.