zoukankan      html  css  js  c++  java
  • Oracle课程档案,第八天

    存储管理

    查询块的大小:show parameter db_block_size

    database:数据库

    tablespace:表空间

    datafile:数据文件

    segments:段

    extents:扩展(范围)

    dba_extents:每一个扩展的信息

    dba_segments:段的信息

    add datafile:添加数据文件

    rollback:回滚(做完一个命令后悔了可以用回滚回到上一个命令)

    objects:对象

    user_tables:用户的表

    dba:数据库所有

    including:包含

    contents:内容

    dba_xxx(如果出现错误命令则权限不够,sys为Oracle的最高权限者。 hr scott 分别为不同的两个用户)

    删除表空间 drop tablespace xxx(表空间的名字)

    删除表 drop table xxx(表的名字) 怕搞混写一下。

    创建新表空间:
    SQL> create tablespace tbs01 datafile '/u01/app/oracle/oradata/orcl/tbs01.dbf' SIZE 10M AUTOEXTEND ON NEXT 10M MAXSIZE 100M;
    (在创建新的表空间时 表空间名字后面必须加+datafile(数据文件)以及后面的文件路径)


    在指定的表空间中创建表:
    SQL> create table t1 tablespace tbs01 as select * from dba_objects where 1=0;


    只读表空间:
    SQL> alter tablespace tbs01 read only;
    SQL> delete t1; 禁止dml
    SQL> insert into t1 select * from t1; 禁止dml
    SQL> create table t2 (x int) tablespace tbs01; 失败
    SQL> alter table t1 add (x int); 成功
    SQL> update t1 set x=1; 失败
    SQL> drop table t1; 成功
    dml和ddl的区别

    改变表空间大小:
    resize,autoextend,add datafile


    删除表空间:
    SQL> drop tablespace tbs01 including contents and datafile;


    从逻辑的角度来看,一个数据库(database)下面可以分多个表空间(tablespace);一个表空间下面又可以分多个段(segment);一个数据表要占一个段(segment),一个索引也要占一个段(segment )。 一个段(segment)由多个 区间(extent)组成,那么一个区间又由一组连续的数据块(data block)组成。这连续的数据块是在逻辑上是连续的,有可能在物理磁盘上是分散。

      那么从物理的角度上看,一个表空间由多个数据文件组成,数据文件是实实在在存在的磁盘上的文件。这些文件是由oracle数据库操作系统的block 组成的。


    SQL> select * from v$tablespace; 查看表空间

    SQL> desc dba_data_files; 查看每个表空间有哪些数据文件

    数据字典/动态性能视图

    一、数据字典
    数据字典记录了数据库的系统信息,它是只读表和视图的集合,数据字典的所有者为sys用户。
    用户只能在数据字典上执行查询操作(select语句),而其维护和修改是由系统自动完成的。
    数据字典包括数据字典基表和数据字典视图,其中基表存储数据库的基本信息,普通用户不能直接访问数据字典的基表。数据字典视图是基于数据字典基表所建立的视图,普通用户可以通过查询数据字典视图取得系统信息。

    数据字典视图主要包括:user_xxx,all_xxx,dba_xxx 三种类型。(dba这类型有时得看在什么用户下 如果该用户权限不够则错误命令)


    显示当前数据库全称。
    SQL> select * from global_name;

    显示当前用户所拥有的表。
    SQL> select table_name from user_tables;

    显示当前用户可以访问的所有表。
    SQL> select table_name from all_tables;

    查询数据库的表空间。
    SQL> select tablespace_name from dba_tablespaces;


    Oracle的所有动态性能视图都是以 V_$ 开头的,v_$和v$是一样的,动态性能视图的所有者为sys,一般情况下由dba或特权用户查询动态性能视图。

    SQL> desc v$instance 显示所有的例 select(查询当前) desc(显示全部)

    SQL> desc v$database 显示所有的数据库

  • 相关阅读:
    SSH框架总结
    SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)
    iBATIS SQL Maps
    深入理解Mybatis中sqlSessionFactory机制原理
    mybatis源码分析(1)——SqlSessionFactory实例的产生过程
    MyBatis常用对象SqlSessionFactory和SqlSession介绍和运用
    Generator生成器函数
    MyBatis学习4---使用MyBatis_Generator生成Dto、Dao、Mapping
    采用图形用户界面的操作系统/应用程序
    图形界面的特点是人们不需要记忆和键入繁琐的命令
  • 原文地址:https://www.cnblogs.com/awdsjk/p/7300847.html
Copyright © 2011-2022 走看看