初识数据字典【weber出品必属精品】

  1. 数据字典结构

    有两部分组成:

    1. 基表:以$结尾的系统表,在创建数据库的时候,oracle自动创建的表

    2. 用户可以访问的视图

  2. 数据字典的种类

    DICTIONARY:简称DICT,所有的数据字典,都可以通过DICT查看

    1. DBA开头的:sys用户所拥有的,普通用户默认不能访问,只有sys授权,才能访问,存储了全部的相关信息
      查看DBA开头的数据字典:

      select table_name from dict where table_name like ‘DBA%‘;

      TABLE_NAME
      ------------------------------
      DBA_ROLES
      DBA_PROFILES
      DBA_CATALOG
      DBA_CLUSTERS
      DBA_CLU_COLUMNS
      DBA_COL_COMMENTS
      DBA_COL_PRIVS
      DBA_ENCRYPTED_COLUMNS

      。。。。。。。。

      525 rows selected.

      SQL> select owner,table_name from dba_tables where owner=‘SCOTT‘;

      OWNER TABLE_NAME
      ------------------------------ ------------------------------
      SCOTT DEPT
      SCOTT EMP
      SCOTT BONUS
      SCOTT SALGRADE

    2. ALL开头的:当前用户可以访问的数据,可以分为两部分数据:一部分是当前用户自己的数据,一部分是其他用户的数据,但是当前用户有访问的权限,普通用户可以访问
      比如:ALL_TABLES:查看当前用户可以访问的表

      SQL> select owner,table_name from all_tables order by 1;

      OWNER TABLE_NAME
      ------------------------------ ------------------------------
      WMSYS AQ$_WM$EVENT_QUEUE_TABLE_S
      WMSYS AQ$_WM$EVENT_QUEUE_TABLE_T
      WMSYS AQ$_WM$EVENT_QUEUE_TABLE_H
      WMSYS SYS_IOT_OVER_10282

      。。。。。。。。。。。。。。。。。。。。。。。

      1576 rows selected.

      conn hr/hr
      
      grant select on employees to scott;
      
      conn scott/tiger
      
      SQL> select owner,table_name from all_tables order by 1;--employees表将显示出来,因为scott有访问的权限
    3. USER开头的:当前用户自己的数据

      比如USER_TABLES:当前用户自己的表

      SQL> conn scott/tiger
      Connected.
      SQL> select user,table_name from user_tables ;
      
      USER                   TABLE_NAME
      ------------------------------ ------------------------------
      SCOTT                   DEPT
      SCOTT                   EMP
      SCOTT                   BONUS
      SCOTT                   SALGRADE
    4. V$开头的:动态性能视图
      v$fixed_table:可以查看数据库中所有v$开头的动态性能视图

      USER is "SYS"
      SQL> desc v$fixed_table
       Name                                   Null?    Type
       ----------------------------------------------------------------- -------- --------------------------------------------
       NAME                                        VARCHAR2(30)
       OBJECT_ID                                    NUMBER
       TYPE                                        VARCHAR2(5)
       TABLE_NUM                                    NUMBER

      动态性能视图的内容:

      1. 控制文件的内容

      2. 内存中的数据

      3. 动态性能视图反映出数据库的性能

      4. 由于内存中的数据时刻在改变,所以动态性能视图中的数据时随着内存和数据库的状态的改变而改变

      SQL> shutdown abort
      ORACLE 例程已经关闭。
      SQL> startup nomount
      ORACLE 例程已经启动。
      
      Total System Global Area  608174080 bytes
      Fixed Size                  1275128 bytes
      Variable Size             184552200 bytes
      Database Buffers          419430400 bytes
      Redo Buffers                2916352 bytes
      SQL> select status from v$instance;
      
      STATUS
      ------------------------------------
      STARTED
      
      SQL> alter database mount;
      
      数据库已更改。
      
      SQL> select status from v$instance;
      
      STATUS
      ------------
      MOUNTED
      
      SQL> alter database open;
      
      数据库已更改。
      
      SQL> select status from v$instance;
      
      STATUS
      ------------
      OPEN

      什么时候访问动态性能视图?

      1. 当数据库出现性能问题的时候

      2. 访问控制文件的内容

时间: 2024-10-24 10:49:32

初识数据字典【weber出品必属精品】的相关文章

创建和管理表【weber出品必属精品】

创建表 必须有 : 1. CREATE TABLE 的权限 SQL> conn /as sysdba 已连接. SQL> create user test default tablespace users identified by a; 用户已创建. SQL> conn test/a ERROR: ORA-01045: user TEST lacks CREATE SESSION privilege; logon denied 警告: 您不再连接到 ORACLE. SQL> co

oracle数据库事务相关【weber出品必属精品】

事务的概念:事务:一个事务由一组构成一个逻辑操作的DML语句组成 事务有开始有结束,事务以DML语句开始,以Conmmit和Rollback结束.以下情况会使得事务结束: 1. 执行COMMIT 或者 ROLLBACK 语句 2. 执行DDL或者 DCL语句 3. 用户退出 4. 系统崩溃 一个事务可以包含下列语句: 1. 对数据做出一致性修改的DML语句 2. 一个 DDL 语句 3. 一个 DCL语句 DDL与和DCL语句执行的过程: 1. 首先发出COMMIT; 2. 执行对数据字典的DM

静默安装ORACLE【weber出品必属精品】

由于本次的实验我是将上次的虚拟机直接拷贝过来,然后将里面图形化界面安装好了的oracle给删除,再次重新安装,所以这里要修改一些配置. 首先修改的是我们的IP地址 # system-config-network 完成后我们修改一下hosts文件,将里面的ip地址给修改一下 # vi /etc/hosts 接着我们删除上次安装过的ORACLE文件 # cd $ORACLE_BASE # ls # rm -rf * 进入root:rm -rf /etc/ora* 还是在安装前进行配置. 接下来进行静

LAMP架构搭建+Discuz论坛搭建【weber出品必属精品】

一.     本机简介: 本机系统: CentOS-6.4-x86_64 主机名:oracle.ywb IP地址:192.168.146.129 二.     在Linux环境下安装Apache步骤 首先将准备好的文件通过PSCP发送至Linux的/Root/test/soft目录下 在windows下按住Ctrl+R,打开运行,输入CMD进入DOS命令行.在dos命令行中使用pscp –scp  命令将要上传的文件上传至Linux中. 上传成功后.我们总共要安装四个文件.第一个我们首先解压:a

linux删除ORACLE【weber出品必属精品】

关闭数据库 sqlplus / as sysdba shutdown abort 清除oracle软件 su - oracle cd $ORACLE_BASE rm -rf * rm -rf /etc/ora* 删除之前的设置的配置文件的内容 如果之前改过版本,编辑文件 /etc/redhat-release 把Red Hat Enterprise Linux Server release 4 (Tikanga) 改成版本5 vi /etc/pam.d/login 行末删除以下内容 sessio

使用DML语句【weber出品必属精品】

DML语句包含以下语法: INSERT:往一个表中增加新行 DELETE:从一个表中删除掉现有的行 UPDATE:更改一个表中现有的行 INSERT语句语法:INSERT INTO TABLE(COLUMN1,COLUMN2,....) VALUES(VAL1,VAL2,...)使用这种方法只能一次插入一行数据 插入包含每一个列值的新行,按缺省顺序列出表中所有的列值. 创建带有结构的空表 SQL> create table t as select * from emp where 1=2;---

ORACLE SQL单行函数(一)【weber出品必属精品】

1.SUBSTR:求父串中的子串 SUBSTR('HelloWorld',1,5) 1:代表子串的起始位置,如果为正,正数,如果为负,倒数 5:代表字串的终止位置,只能向右数,可以省略,如果省略就是数到最后 SUBSTR:求父串中的子串 SUBSTR('HelloWorld',1,5) 1:代表子串的起始位置,如果为正,正数,如果为负,倒数 5:代表字串的终止位置,只能向右数,可以省略,如果省略就是数到最后 2.LENGTH:求字符串的长度 SQL> select LENGTH('HELLOWO

ORACLE SQL单行函数(二)【weber出品必属精品】

11.dual:虚表,任何用户都可以使用,表结构如下: SQL> desc dual Name Null? Type ----------------------------------------- -------- ---------------------------- DUMMY VARCHAR2(1) 12.dual的作用: 1. 查询数据库系统日期 2. 进行四则运算 SQL> select sysdate from dual; ---这里查询数据库系统日期 SYSDATE ---

ORACLE SQL单行函数(三)【weber出品必属精品】

16.L:代表本地货币符,这个和区域有关.这个时候我们想来显示一下人民币的符号:¥ $ vi .bash_profile ---写入如下内容: export NLS_LANG='SIMPLIFIED CHINESE'_CHINA.AL32UTF8 ---修改成简体中文+地区+字符集 source .bash_profile ---让环境变量生效 [[email protected] ~]$ sqlplus scott/tiger SQL*Plus: Release 10.2.0.5.0 - Pr

全世界最详细的图形化VMware中linux环境下oracle安装(二)【weber出品必属精品】

<ORACLE 10.2.05版本的升级补丁安装> 首先我们解压 $ unzip p8202632_10205_LINUX.zip 解压后我们会发现多出了个文件夹,他是:Disk1,进入Disk1.然后执行安装: $ ./runInstaller 执行脚本 # /u01/app/oracle/10.2.0/db_1/root.sh Running Oracle 10g root.sh script... The following environment variables are set a