• 管理表空间和数据文件概要


    管理数据库存储结构

    表空间和数据文件

    Oracle DB在逻辑上将数据存储在表空间中,在物理上将数据存储在数据文件中

    表空间:

    -只能属于一个数据库

    -包括一个或多个数据文件

    -可进一步划分为逻辑存储单元

    数据文件:

    -只能属于一个表空间和一个数据库

    -是存储方案对象数据的资料档案库

    System表空间 存了大量的系统表,包括一些数据字典和动态性能视图等

    Sysaux 辅助表空间 作为SYSTEM表空间的辅助表空间.以前一些使用独立表空间或系统表空间的数据库组件现在在SYSAUX表空间中创建

    Temp 临时表空间 临时表空间用来管理数据库排序操作以及用于存储临时表、中间排序结果等临时对象

    UNDOTBS1 还原表空间

    Users表空间存放永久用户信息的

    Example表空间

    查看数据库里所有表空间的信息

    Desc dba_data_files;

    select file_name,tablespace_name from dba_data_files;

    /u01/app/oracle/oradata/VDEDU/users01.dbf   USERS

    /u01/app/oracle/oradata/VDEDU/undotbs01.dbf   UNDOTBS1

    /u01/app/oracle/oradata/VDEDU/sysaux01.dbf   SYSAUX

    /u01/app/oracle/oradata/VDEDU/system01.dbf   SYSTEM

    /u01/app/oracle/oradata/VDEDU/example01.dbf   EXAMPLE

    select file_name,tablespace_name from dba_temp_files;

    /u01/app/oracle/oradata/VDEDU/temp01.dbf   TEMP

    创建表空间

    SQL> create tablespace test datafile '/u01/app/oracle/oradata/VDEDU/test01.dbf' size 100m autoextend on;

    Tablespace created.

    扩大表空间

    SQL> Alter tablespace test add datafile ‘/u01/app/oracle/oradata/VDEDU/test02.dbf’ size 100 m autoextend on;

    创建临时表空间

    Create temporary tablespace test tempfile '/u01/app/oracle/oradata/VDEDU/test01.dbf' size 100m autoextend on;

    扩大临时表空间

    Alter  tablespace test add tempfile '/u01/app/oracle/oradata/VDEDU/test01.dbf' size 100m autoextend on;

    Alter user hr default tablespace test;使hr用户默认使用表空间test

    Alter user hr temporary tablespace temptest;指定使用临时表空间

    SQL> select tablespace_name,bytes/1024/1024||'M' as "size" from dba_data_files;

    TABLESPACE_NAME        size

    ------------------------------ -----------------------------------------

    USERS        5M

    UNDOTBS1        110M

    SYSAUX        580M

    SYSTEM        760M

    EXAMPLE        346.25M

    TEST        100M

    TEST        100M

    TEST2        100M

    TEST2        100M

    TEST3        100M

    TEST3        100M

     

     

     

    Oracle11gR2创建表空间基本模版

    Create smallfile tablespace <tablespace_name>

    Datafile<路径和文件名>size<文件大小>

    Autoextend on next<每次扩展多大>maxsize {unlimited|nM/G/T} logging

    Extent management {local|dictionary} {autoallocate|uniform size<区固定大小>}

    Segment space management {auto|manual};  (段扩展)

    段管理模式

    ASSM:automatic segment space management(自动段空间管理)

    MSSM:manual segment space management(手工段空间管理)

    Select tablespace_name,segment_space_management from dba_tablespaces;

    SQL> create tablespace tbs01 datafile '/u01/app/oracle/oradata/VDEDU/tbs0101.dbf' size 10m autoextend on extent management local autoallocate;--区扩展本地管理自动分配大小

    SQL> create tablespace tbs02 datafile '/u01/app/oracle/oradata/VDEDU/tbs0201.dbf' size 100m autoextend on extent management local uniform size 10m;--区扩展本地管理固定大小

    SQL> create tablespace ASSMTBS1 datafile '/u01/app/oracle/oradata/VDEDU/assmtbs1_01.dbf' size 10m segment space management auto; --自动段空间管理

    SQL> create tablespace MSSMTBS1 datafile '/u01/app/oracle/oradata/VDEDU/mssmtbs1_01.dbf' size 10m

    segment space management manual;--手工段空间管理

    logging实际上是对象的一个属性,用来表示在创建对象时是否记录redo日志,包括在做dml时是否记录redo日志。一般表上不建议使用nologging,在创建索引或做大量数据导入时,可以使用nologging

    管理表空间的数据字典视图

    Dba_tablespaces;

    Dba_free_space;

    Dba_segments;

    Dba_data_files;

    Dba_temp_files;

    Dba_tablespace_groups;

    V$datafile;

    V$filestat;

    查询用户使用的默认表空间是哪个

    SQL> select username,default_tablespace from dba_users;

    USERNAME        DEFAULT_TABLESPACE

    ------------------------------ ------------------------------

    HR        HRTBS

  • 相关阅读:
    洛谷 P1908 逆序对(树状数组解法)
    洛谷 P1908 逆序对(归并排序解法)
    洛谷 P3368 【模板】树状数组 2(区间修改点查询)
    POJ 2833 The Average(优先队列)
    POJ 2255 Tree Recoveryw(二叉树)
    洛谷 P1540 机器翻译(队列)
    POJ 1686 Lazy Math Instructor(栈)
    队列中取最大值操作
    相邻元素差的绝对值都是1,在这样的数组中找目标元素
    双栈队列实现快速获取队列最大值最小值
  • 原文地址:https://www.cnblogs.com/kawashibara/p/9232435.html
Copyright © 2020-2023  润新知