精华内容
下载资源
问答
  • select * from user_users;create tablespace ycm logging datafile 'D:\oracleData\ycm.dbf' size 50m autoextend on next 50m maxsize 1024m extent management local;create temporary tablespace ycm_temp tempf...
    select * from user_users;
    

    create tablespace ycm logging datafile 'D:\oracleData\ycm.dbf' size 50m autoextend on next 50m maxsize 1024m extent management local;

    create temporary tablespace ycm_temp tempfile 'D:\oracleData\ycm_temp.dbf' size 50m autoextend on next 50m maxsize 1024m extent management local;

    create user ycm identified by motorXMD312 default tablespace ycm temporary tablespace ycm_temp;
    展开全文
  • oracle创建表空间

    千次阅读 2021-01-27 09:10:12
    不同于mysql有多个数据库, oracle新增了表空间和用户的概念,表空间是虚拟的,并且只有一个数据库,为了方便维护,一般一个表空间上只创建一个用户; 这里的用户名类似于mysql的数据库名,oracle的用户名.表名等价...

    转至:https://liujianshiwo.iteye.com/blog/1988094

    不同于mysql有多个数据库, oracle新增了表空间和用户的概念,表空间是虚拟的,并且只有一个数据库,为了方便维护,一般一个表空间上只创建一个用户;

    这里的用户名类似于mysql的数据库名,oracle的用户名.表名等价于mysql的数据库名.表名;因此在写兼容mysql和oracle的语句时可以用到。

    oracle安装完数据库的一般流程:先建表空间(分区)–>再建用户(分配相应的表空间和用户权限)–>登陆用户,建表

    1. 创建表空间
      create tablespace xin_datafile
      datafile ‘C:\kingstar\orcltb\xin_tb1.dbf’ size 500M --存储地址 初始大小500M
      autoextend on next 10M maxsize 200M --每次扩展10M,无限制扩展 unlimited
      extent management local autoallocate
      segment space management auto;

    –创建临时表空间
    create temporary tablespace user_temp
    tempfile ‘D:\oracle\oradata\Oracle9i\user_temp.dbf’ size 50m
    autoextend on next 50m maxsize 20480m
    extent management local;

    –删除表空间
    DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;

    –表空间属性

    每块的字节大小:8192

    表空间自增量:increment_by8192 byte ; 换算: increment_by8192/1024/1024 M 或者 increment_by/128M

    注意*:若表空间初始化大小为500M,阀值为1G,自增量为300M,自增一次后的表空间大小为800M,不会受自动扩展容量的限制,最终会扩展为与阀值相等。

    –查询表空间信息

    select * from dba_data_files t order by tablespace_name;

    –建立UNDO表空间

    CREATE UNDO TABLESPACE UNDOTBS02
    DATAFILE ‘/oracle/oradata/db/UNDOTBS02.dbf’ SIZE 50M
    #注意:在OPEN状态下某些时刻只能用一个UNDO表空间,如果要用新建的表空间,必须切换到该表空间:
    ALTER SYSTEM SET undo_tablespace=UNDOTBS02;

    –改变表空间状态

    1.使表空间脱机
    ALTER TABLESPACE game OFFLINE;

    如果是意外删除了数据文件,则必须带有RECOVER选项
    ALTER TABLESPACE game OFFLINE FOR RECOVER;

    2.使表空间联机
    ALTER TABLESPACE game ONLINE;

    3.使数据文件脱机
    ALTER DATABASE DATAFILE 3 OFFLINE;

    4.使数据文件联机
    ALTER DATABASE DATAFILE 3 ONLINE;

    5.使表空间只读
    ALTER TABLESPACE game READ ONLY;

    6.使表空间可读写
    ALTER TABLESPACE game READ WRITE;

    –扩展表空间

    首先查看表空间的名字和所属文件
    select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name;

    1.增加数据文件
    ALTER TABLESPACE game ADD DATAFILE ‘/oracle/oradata/db/GAME02.dbf’ SIZE 1000M;

    2.手动增加数据文件尺寸
    ALTER DATABASE DATAFILE ‘/oracle/oradata/db/GAME.dbf’ RESIZE 4000M;

    3.设定数据文件自动扩展
    ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf AUTOEXTEND ON NEXT 100M MAXSIZE 10000M;

    设定后查看表空间信息
    SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE, (B.BYTES100)/A.BYTES “% USED”,(C.BYTES100)/A.BYTES “% FREE”
    FROM SYS.SM T S A V A I L A , S Y S . S M TS_AVAIL A,SYS.SM TSAVAILA,SYS.SMTS_USED B,SYS.SM$TS_FREE C WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE

    2.创建用户

    create user test identified by test

    default tablespace SIRM2

    temporary tablespace TEMP
    profile DEFAULT;

    –创建用户并指定表空间
    create user username identified by password
    default tablespace user_data
    temporary tablespace user_temp;

    –删除用户命令
    drop user user_name cascade;

    3.授权

    grant dba to test;
    grant connect to test;
    grant resource to test;

    –给用户授予权限
    grant connect,resource to username;
    撤权:
    revoke 权限… from 用户名;

    1. SYS用户在CMD下以DBA身份登陆:
      在CMD中打sqlplus /nolog
      然后再 conn / as sysdba

    附加1:

    oarcle数据库真正存放数据的是数据文件(data files),Oarcle表空间(tablespaces)实际上是一个逻辑的概念,他在物理上是并不存在的,那么把一组data files 捻在一起就成为一个表空间。(https://www.cnblogs.com/fnng/archive/2012/08/12/2634485.html)

    表空间属性:

    一个数据库可以包含多个表空间,一个表空间只能属于一个数据库

    一个表空间包含多个数据文件,一个数据文件只能属于一个表空间

    表这空间可以划分成更细的逻辑存储单元

    Oracle数据库的存储结构:

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

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

    Segment(段) :段是指占用数据文件空间的通称,或数据库对象使用的空间的集合;段可以有表段、索引段、回滚段、临时段和高速缓存段等。

    Extent (区间):分配给对象(如表)的任何连续块叫区间;区间也叫扩展,因为当它用完已经分配的区间后,再有新的记录插入就必须在分配新的区间(即扩展一些块);一旦区间分配给某个对象(表、索引及簇),则该区间就不能再分配给其它的对象.

    附加2:oracle 表空间创建 格式及属性说明:http://blog.sina.com.cn/s/blog_3cae66560102w0vk.html

    一、创建表空间完整的格式

    CREATE [UNDO|TEMPORARY] TABLESPACE tablespace_name

     DATAFILE 'path/filename' [SIZE INTEGER[K| M]]  [REUSE] 
    
     [AUTOEXTEND [OFF | ON ] ]
    
     [NEXT INTEGER[K | M]]
    
     [MAXSIZE [UNLIMITED | INTEGER[K | M]]]
    
     [MINIMUM EXTENT INTEGER[K | M]]
    
     [BLOCKSIZE integer [k]]
    
     [DEFAULT STORAGE storage_clause]
    
     [ONLINE | OFFLINE]
    
     [LOGGING | NOLOGGING]
    
     [FORCE LOGGING]
    
     [EXTENT MANAGEMENT [DICTIONARY | LOCAL]]
    
     [AUTOALLOCATE | UNIFORM [SIZE INTEGER[K | M]]]
    
     [SEGMENT SPACE MANAGEMENT [AUTO | MANUAL]]
    

    二、表空间格式说明

    1、UNDO

      说明系统将创建一个回滚表空间。
    
       在9i中数据库管理员可以不必管理回滚段,只有建立了undo表空间,系统就会自动管理回滚段的分配,回收的工作。当然,也可以创建一般的表空间,在上         面创建回滚段.不过对于用户来说,系统管理比自己管理要好很多.如果需要自己管理,请参见回滚段管理的命令详解.
    
       当没有为系统指定回滚表空间时,系统将使用system系统回滚段来进行事务管理。
    

    2、tablespace_name表空间名满足oracle的命名规范即可。

    3、DATAFILE ‘path/filename’ [SIZE INTEGER[K| M]] [REUSE]

      指定一个或多个数据文件路径和文件名,[SIZE INTEGER[K| M]]用来指定表空间在数据文件中所占的空间大小,K|M是说大小的单位是K还是M。
    
      [REUSE] 如果创建表空间指定的数据文件已经存在,则需要使用reuse注明,否则会报错。
    
      ERROR at line 1:
    

    ORA-01537: cannot add data file ‘E:\oracle\oradata\10.1.0\ZRPTEST\TB_TEST1.dbf’

    • file already part of database

    4、[AUTOEXTEND [OFF | ON ] ]

      禁止或允许自动扩展数据文件,默认情况下为OFF
    

    5、[NEXT INTEGER[K | M]]

      指定当需要更多盘区时分配给数据文件的磁盘空间,以K或M为单位。
    

    6、[MAXSIZE [UNLIMITED | INTEGER[K | M]]]

      指定允许分配给数据文件的最大磁盘空间,当为UNLIMITED时表示只有当磁盘空间满时,才不允许再扩展数据文件。
    

    7、[MINMUM EXTENT INTEGER[K | M]]

      指定盘区大小是指定大小的整数倍。即initial和next盘区大小应为minimum extent的整数倍,这个参数可以减小空间碎片,保证表空间的范围是这个值的整数倍。
    
      【注:minextents 用于指定在创建时分配给段的盘区总数。使用这个参数,即使可用空间是不连续的,在创建对象时也能分配很大的空间。默认                    值和最小值都是1。如果minextents>1,盘区大小以next和pctincrease为基础计算。】
    

    8、[BLOCKSIZE integer [k]]

        这个参数可以设定一个不标准的块的大小。如果要设置这个参数,必须设置db_block_size,至少一个db_nk_block_size,
    
        并且声明的integer的值必须等于db_nk_block_size.
    
       注意:在临时表空间不能设置这个参数。
    

    9、 [DEFAULT STORAGE storage_clause]

       表示为在该表空间创建的全部对象指定缺省的存储参数,没有指定时oracle将会为所有对象指定一些系统默认的存储参数。
    
       storage_clause的语法格式如下:
    
       STORAGE(
    
            INITIAL integer[K|M]       --为段分配第一个区的大小
    
            NEXT     integer[K|M]       --为第一个扩展分区的大小
    
            MINEXTENTS integer|UMLIMITED      --创建段时分配的最小总区间数
    
            MAXEXTENTS integer|UMLIMITED     --创建段时分配的最大总区间数
    
            PCTINCREASE integer                           --每次扩展增量的大小
    
            FREELISTS integer                                  --模式对象中每一个自由列表组中自由列表的数量,表、族或索引的每个空闲列表组中的列表数量。
    
            FREELISTS GROUPS integer                  --指定表、族或索引的每个空闲列表组数量。
    
         )
    

    10、[ONLINE | OFFLINE]

      ONLINE是指在创建表空间之后使该表空间立即对授权访问该表空间的用户可用。
    
      OFFLINE是指offline以后,未完成的事物可以提交或回滚,但不能发起新的事物,也不能进行查询。OFFLINE的四种模式
    
       (1)NORMAL:做检查点 
    
                 alter tablespace users  offline;           alter tablespace users online;
    
       (2)TEMPORARY:可以在数据文件损坏的情况下offline tablespace
    
                 alter tablespace users offline temporary;   alter tablespace users online;
    
       (3)IMMEDIATE:不做检查点,只有在归档模式下才可以offline tablespace,online时需要recover
    
                 alter tablespace users offline immediate;    recover tablespace users;       alter tablespace users online;
    
        (4)FOR RECOVER:在归档模式下才可以offonline,在基
    

    11、[LOGGING | NOLOGGING]

      指定日志属性,它表示将来的表、索引等是否需要进行日志处理。默认值为LOGGING
    

    12、[FORCE LOGGING]

       使用这个子句指出表空间进入强制日志模式。此时,系统将记录表空间上对象的所有改变,除了临时段的改变。这个参数高于对象的nologging选项。
    
       注意:设置这个参数指数据库不可以open并且进入读写模式。而且,在临时表空间和回滚表空间中不能使用这个选项。
    

    13、[PERMANENT | TEMPORARY]

       指出表空间的属性,是永久表空间还是临时表空间。永久表空间存放的是永久对象,临时表空间存放的是session生命期中存在的临时对象。
    
       这个参数生成的临时表空间创建后一直都是字典管理,不能使用extent management local选项。
    
       如果要创建本地管理表空间,必须使用create temporary tablespace
    
       注意,声明了这个参数后,不能声明block size
    

    14、[EXTENT MANAGEMENT [DICTIONARY | LOCAL]]

        [AUTOALLOCATE | UNIFORM [SIZE INTEGER[K | M]]]
    
        这是最重要的子句,说明了表空间如何管理范围。一旦你声明了这个子句,只能通过移植的方式改变这些参数。
    
        如果希望表空间本地管理的话,声明local选项。本地管理表空间是通过位图管理的。autoallocate说明表空间自动分配范围,用户不能指定范围的大小。
    
        只有9.0以上的版本具有这个功能。uniform说明表空间的范围的固定大小,缺省是1m。
    
         不能将本地管理的数据库的system表空间设置成字典管理。oracle公司推荐使用本地管理表空间。
    
         如果没有设置extent_management_clause,oracle会给他设置一个默认值。如果初始化参数compatible小于9.0.0,那么系统创建字典管理表空间。
    
          如果大于9.0.0,那么按照如下设置:如果没有指定default storage_clause,oracle创建一个自动分配的本地管理表空间。
    
         否则,如果指定了mininum extent,那么oracle判断mininum extent 、initial、next是否相等,以及pctincrease是否=0.如果满足以上的条件,oracle创建一个本地管理
    
          表空间,extent size是initial.如果不满足以上条件,那么oracle将创建一个自动分配的本地管理表空间。
    
          如果没有指定mininum extent。initial、那么oracle判断next是否相等,以及pctincrease是否=0。表示满足oracle创建一个本地管理表空间并指定uniform。
    
           否则oracle将创建一个自动分配的本地管理表空间。
    
          注意:本地管理表空间只能存储永久对象。如果你声明了local,将不能声明default storage_clause,mininum extent、temporary.
    

    15、[SEGMENT SPACE MANAGEMENT [AUTO | MANUAL]]

       指定 表空间段的管理方式,AUTO为系统自动管理,MANUAL为手工管理。默认为AUTO。
    

    附加3:Oracle中分区表中表空间属性:https://blog.51cto.com/hbxztc/1929585

    展开全文
  • 创建表空间的作用和目的

    千次阅读 2019-04-19 11:26:49
    表空间:此空间得作用是来...临时表空间:主要用途是在数据库进行排序运算[如创建索引、order by及group by、distinct、union/intersect/minus/、sort-merge及join、analyze命令]、管理索引[如创建索 引、IMP进行...

    表空间:此空间得作用是来进行数据存储的(表、function、存储过程等),所以是实际物理存储区域;目的实际上便是空间不足,需要额外的地方来存储以便使用。
    临时表空间:主要用途是在数据库进行排序运算[如创建索引、order by及group by、distinct、union/intersect/minus/、sort-merge及join、analyze命令]、管理索引[如创建索 引、IMP进行数据导入]、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。
    备注:因为用途不同所以才有了区分,实际上数据库都是有默认临时空间的,但实际应用中很难满足需求,所以才需要自己创建临时空间。oracle 数据库就是指的oracle 整体,一般一个机器上只安装一个oracle数据库
    oracle建立好以后,实际上oracle是一个一个的DBF文件,然后N个DBF文件组成一个表空间
    你的表就建立在表空间下,比如我举个例子:
    一个数据库叫jack,
    jack下用户使用的表空间有3个: users , abc, jacc
    其中
    users由d:\1.dbf组成
    abc由d:\11.dbf d:\22.dbf组成
    jacc 由 d:\jacc.dbf组成
    你建的表可以选择放在这3个表空间的任意一个里(如果不写,就放在你这个用户的默认表空间里,一般都是users,这个表空间是系统自己建立的)
    临时表空间你也可以用,但是只能将临时表放在里面,临时表空间主要放置一些临时数据,比如你查询一个复杂的sql语句,系统会将中间数据放在临时表空间里暂存
    临时表空间会自己删除(可以选择会话结束就删除)

    展开全文
  • 创建表空间

    千次阅读 2018-04-15 11:15:23
    (四)、创建表空间1. 创建表空间要考虑的因素创建数据库完毕~ 创建所需的 ...数据文件数目 ~只能创建有限数的表空间表空间数据文件总和 ~ 不能超过 创建数据库时 ~指定的maxdatafiles参数的限制创建的表空间 ~...

    (四)、创建表空间

    1.  创建表空间要考虑的因素

    创建数据库完毕~ 创建所需的 非system表空间 ~

    创建表空间 ~ 空间数量 、对应数据文件大小 ~ 表空间存储管理方式、默认存储参数、块大小

    oracle本身 ~ 不限制表空间数目~ 限制于数据库所能拥有 数据文件数目 ~只能创建有限数的表空间

    表空间数据文件总和 ~ 不能超过 创建数据库时 ~指定的maxdatafiles参数的限制

    创建的表空间 ~默认下具有标准块大小 ~ 但也可创建具有非标准块大小的表空间


    datafile: 纸递给表空间所对应的数据文件

    size: 用于指定数据文件的尺寸

    extent management dictionary: 表空间中区的管理方式为字典管理凡是

    default storage: 用于指定默认存储参数设置。 当不设置默认存储参数时~ 系统自动使用system表空间的存储参数设置

    initial: 指定数据库对象所分配的第一个区的大小

    next: 指定数据库对象所分配的第二个区的大小

    minextents: 指定 数据库对象所分配的最少区个数

    maxentents: 指定数据库对象所分配的最多区个数

    pctincrease: 指定 从第三个区开始, 每个区比前一个区所增长的百分比

    size = next*(1+pctincrease/100)(n-2)

    n~ 表示第n个区, ~ 除第一个区和第二个区外,其他区尺寸会自动转变为db_block_size的整数倍


    2. 本地管理的表空间中的段空间管理

    create tablespace语句 ~创建一个 本地管理的表空间~

    可以使用 segment space management 子句 ~ 设定段内的可用/已用空间如何管理

    可选方式:

    2.1. auto

    这种设置下 ~ oracle使用位图管理段内可用空间 
    此处的位图 ~用于描述段内每个数据块 ~是否有足够的可用空间,来插入新数据。
    随着一个数据块中可用空间的变化,~ 及时在位图中反映她的状态。

    oracle使用位图~ 更加自动化的管理段内的可用空间。 ~自动段空间管理

    一个本地管理的 ~ 且自动段空间管理的表空间, ~ 可被创建为小文件表空间、 大文件表空间。

    创建本地管理表空间时, 自动段空间管理是默认值。


    2.2 manual

    该设置下, oracle使用可用块列表 free list ~管理段内的可用空间。

    可用块列表 ~ 记录了所有可以被用于插入新数据的 数据块


    (五)、 其他表空间操作

    1. 调整表空间大小

    查看表空间大小~ 数据占满了表空间 ~不能分配新的区,~用户不能插入数据记录

    dba改变表空间的尺寸 ~ 目前对象的大小、对象的增长速度、有规律的检查数据库对象的大小~

    快速增长的表上 ~ 经常查看表空间中的自由空间~主动增加表空间容量,~提高系统性能

    表空间 ~ 一个或多个数据文件
    表空间尺寸 ~表空间所有数据文件尺寸的总和

    表空间的大小 ~决定于数据文件的个数和大小


    调整表空间大小方法:

    重置数据文件大小: alter database datafile '' | fileno resize xx

    更改数据文件大小: 数据文件 ~ aotuextend (自动扩展)属性 ~自动调整数据文件的大小~

    也可以使用 alter tablespace 手动调整

    使用alter tablespace命令 ~ 添加新的数据文件给表空间


    1.1 数据文件的自动扩展属性(autoextend)

    激活数据文件的自动扩展选项 ~ 当数据占满数据文件所以空间 ~并且数据文件不能容纳新数据~
    系统自动扩展该数据文件。

    指定数据文件的 aotuextend子句 ~启用或禁用数据文件的自动扩展。

    文件按指定的增量增加 ~ 直到达到指定的最大值。


    使用autoextend子句优点:

    表空间的空间用尽时~无需过多的直接干预

    确保应用程序~不会由于未能分配区而暂停


    创建数据文件后,使用下列sql命令 ~启用数据文件的自动扩展:

    create tablespace

    alter tablespace


    autoextend off: 禁用
    autoextend on:启用

    next : 自动扩展是每次分配给数据文件的磁盘空间
    maxsize: 指定允许分配给该数据文件的最大磁盘空间

    unlimited: 数据文件磁盘空间设为不受限






    1.2 为表空间增加数据文件

    通过alter tablespace add datafile 命令 ~ 添加数据文件给表空间 ~增加分配给表空间的磁盘空间总量



    1.3 手工修改数据文件大小

    自动扩展选项 ~ 数据文件在数据写满时自动扩展 --》会导致递归空间操作,减低系统性能

    例: 使用sql*loader ~装载大批量数据给表emp ~数据写满数据文件 ~

    先扩展数据文件 ~才能装载数据 --》导致系统性能的降低。

    因此~ 执行批量数据装载操作前 ~ 先确定数据文件是否能够容纳足够的数据。

    如果不足,~应先扩展该数据文件~再装载数据。

    使用alter database命令 ~ 手动增加或减少 数据文件的大小

    而不必通过~ 添加数据文件、 更改自动扩展属性~ 来更改表空间的大小


    Integer: 字节为单位, 表示数据文件的绝对大小

    更改数据文件大小~ 如果比实际存储的数据库对象要小~ 大小只能减少到~
    数据文件内最后一个对象的最后一个块为止~

    保证缩减尺寸后的表空间~必须能容纳已存在的数据对象,否则提示出错信息




    2. 修改表空间读写属性

    表空间用于存放静态数据~ 不会对这些数据进行修改操作~将数据存放到只读设备上

    例:存放到光盘上

    表空间放到只读设备上~ 转变状态为只读状态。

    将表空间改为只读模式命令:


    执行命令时~ 自动回滚与表空间相关的所有事物 ~
    过度状态期间 ~ 不允许对表空间进行写入操作

    当所有事物处理提交 或者 回退后,~只读命令完成 ~表空间置于只读模式


    --》 执行命令后~ 表空间mytbs3 转变为只读状态。

    用户只能 执行查询操作select ~该表空间的对象上

    不能执行dml或ddl操作,~ 有一种ddl除外~

    可以执行 drop table 或drop index ~ 删除该表空间的表或索引

    因为这些命令 ~只影响数据字典(数据字典位于system表空间)

    drop命令只更新数据字典,~而不更新只读表空间上的物理文件


    对本地管理的表空间,~删除的段 将改为临时段 ~避免更新位图。

    将表空间设为只读状态前,~引发对表空间的数据文件 ~执行检查点操作

    表空间设为只读~可防止对表空间的数据文件进行任何写操作。

    因此,数据文件可~驻留在只读介质上,如cd-rom 或一次性写入(worm)驱动器

    使用只读表空间的好处~ 免去对数据库大量的静态数据执行备份


    要在只读表空间上~执行dml操作,~将表空间改为可写状态

    使用alter tablespace [tablespace] read|write命令~ 表空间内的所有数据文件必须联机




    3.修改表空间的online/offline属性

    通过表空间置于联机或脱机状态~来控制表空间可用性。

    表空间~联机状态~用户可访问其数据

    表空间~脱机状态,用户无法访问其数据,允许正常访问数据库~其余处于联机的表空间。


    dba让表空间脱机的几种情况

    使数据库的一部分表空间不可用,~但允许正常访问数据库的其余表空间

    执行脱机表空间备份~ (尽管表空间可以在~联机使用时备份)

    数据库打开时~ 恢复表空间或数据文件

    数据库打开时! 移动数据文件



    normal:将表空间所有数据文件内的所有块~从sga中写入数据文件~
    并将数据文件关闭。~缺省设置。

    在该表空间重新联机前~ 无须对其执行介质恢复。~尽可能使用normal子句

    temporary: 
    对表空间所有联机的数据文件~ 执行检查点操作~

    但是执行检查点时~并不检查数据文件的状态,~即使某些文件无法写入检查点~oracle也会忽略这些错误

    在使用此表空间重新联机之前,所有脱机文件可能都需要进行介质恢复


    immediate: 不保证表空间的文件可用,~而且不执行检查点操作

    表空间重新联机前,必须对其执行介质恢复操作


    for recover: 使表空间脱机~以进行表空间时间点恢复


    只要数据库打开,dba可以使任意一个表空间脱机~

    (system表空间和任何具有活动还原段或临时段的表空间除外)。

    当一个表空间脱机后,oracle服务器~ 将使与之相关联的所有数据文件脱机


    执行查询操作~用户将收到一条错误信息 ~ 

    因为表空间脱机后,~oracle不允许有任何sql语句引用该表空间含有的对象~即用户不能访问该表空间


    当表空间脱机或者重新联机后~ 该事件记录在数据字典和控制文件内。

    如果关闭数据库时表空间仍然脱机,-》当随后数据库装载并重新打开时~该表空间仍保持脱机状态且不会被检查。

    如果遇到某些错误,(例如~ 当数据库写入程序进程dbwn几次~

    试图向某表空间的数据文件写入都失败时)~ oracle实例自动~将表空间从联机状态切换为脱机状态

    不能设为脱机的表空间~ system表空间~具有活动的还原段的表空间,缺省临时表空间


    当希望访问表空间中的数据~ 如表、索引等对象时~表空间必须处于联机状态



    4.数据文件的脱机与联机

    类似于表空间~ 联机的数据文件也可以被设置为脱机状态。

    脱机的数据文件对于数据库~ 是不可用的~直至它们被恢复到联机状态为止

    数据文件发生损坏,~oracle自动将这个数据设置为脱机状态,~并记录于警告文件中

    如果损坏的文件恢复后,~需要手工方式重新将数据文件恢复为联机状态。


    数据文件设置为脱机状态,不会影响表空间的状态~

    相反,~将表空间设置为脱机状态~ 表空间的数据文件同时会进入脱机状态

    该表数据文件状态,~可使用alter database命令







    5. 数据文件的移动

    为防止数据丢失~和减少i/o冲突,提供i/o性能, ~尽可能将数据文件分布到不同磁盘上~

    并且尽可能均衡不同磁盘之间的i/o操作。


    移动数据文件 ~ 一方面出于性能方面的考虑,~另一方面出于安全考虑

    因此,在实际数据库应用中~ 可能会移动数据文件

    移动数据文件有两种方法 ~ 一种是使用alter tablespace命令,~
    另一种方法是使用alter database命令

    具体采用哪种方法取决于表空间类型

       5.1.使用alter tablespace命令


    它仅适用于~不含活动还原段或临时段的非system表空间中~数据文件的移动

    源文件名必须与存储在控制文件内的名称匹配~ 表空间必须脱机~
    并且to子句后的目标数据文件必须存在


    alter tablespace 命令重命名数据文件的步骤:

    使表空间脱机
    使用操作系统命令移动或复制文件
    执行alter tablespace rename datafile 命令
    使表空间联机

    必要时使用操作系统命令~删除原来的数据文件




    5.2 使用alter database命令

    alter database命令可用来~ 移动任意类型的数据文件,~但数据库必须处于已装载的状态~

    且目标数据文件必须存在。步骤如下:

    关闭数据库
    使用操作系统命令移动文件
    装载数据库

    执行alter database rename file命令

    打开数据库


    因为system表空间无法脱机~ 必须使用该方法移动system表空间内的数据文件。

    使用此命令重命名无法脱机的表空间内的文件。


    ----------------------------------------------------------
    (六)、删除表空间
    https://blog.csdn.net/u012596785/article/details/79951330

    展开全文
  • 创建表空间语法: create  tablespace 表空间名称 datafile  '数据文件的路径'   size  大小; 命令行输入 SQL> create tablespace persional_db datafile 'F:\APP\ORACLE\ORADATA\...
  • Oracle创建表空间

    万次阅读 2018-12-24 13:28:44
    创建表空间 ORACLE物理上是由磁盘上的以下几种文件:数据文件和控制文件和LOGFILE构成的 oracle中的就是一张存储数据的表空间是逻辑上的划分。方便管理的。 数据表空间 (Tablespace) 存放数据总是需要空间...
  • oracle 创建一个用户并指定默认表空间和临时表空间 1. 创建临时表空间 SQL> create temporary tablespace test1temp tempfile '/home/u01/app/oracle/oradata/ytzx/test1temp01.dbf' size 10240m autoextend on...
  • 我们有两个途径创建bigfile表空间1....这样我们创建表空间的时候,如果在create tablespace语句中没有设置表空间的类型为smallfile,则缺省创建bigfile表空间。2.在创建表空间时,指定表空间的类型为bigfilecrea...
  • Oracle重新创建临时表空间

    千次阅读 2019-02-15 11:00:55
    1.创建中转临时表空间 create temporary tablespace TEMP1 TEMPFILE '/data/dbfile/temp_02.dbf' SIZE 512M REUSE AUTOEXTEND ...2.改变缺省临时表空间为刚刚创建的新临时表空间temp1 alter database default tem...
  • oracle创建表表空间深入学习

    千次阅读 2018-07-20 15:04:59
    Oracle创建表空间 创建表空间 ORACLE物理上是由磁盘上的以下几种文件:数据文件和控制文件和LOGFILE构成的 oracle中的就是一张存储数据的表空间是逻辑上的划分。方便管理的。 数据表空间 (Tablespace...
  • Oracle:默认表空间

    千次阅读 2019-04-23 15:37:13
    一,System表空间 SYSTEM表空间主要存放SYS用户的各个对象和其他用户的少量对象 二,SYSAUX表空间 SYSTEM表空间主要用于存放Oracle系统内部的数据字典,而...三,通过本地化管理方式创建表空间 create...
  • Oracle创建表空间创建用户、授予权限以及删除用户等 --创建表空间 CREATE TABLESPACE caiyl DATAFILE 'D:\Oracle\app\caiyl\oradata\orcl\caiyl_space.dbf' size 500m AUTOEXTEND ON NEXT 200M MAXSIZE 20480M ...
  • 用户有默认表空间,但是只能指定一个,但是你有其它表空间的限额的话,可以将建到其它表空间中。 语法 create table xxx(xxxx xx) ...2.查看所有用户的表空间需要有dba的权限1、查看用户使用的缺省表空间名...
  • Oracle表空间的作用

    千次阅读 2019-09-09 21:37:19
    Oracle表空间的作用 一 Oracle表空间的概念 ORACLE数据库被划分成称作为表空间的逻辑区域——形成ORACLE数据库的逻辑结构。 一个ORACLE数据库能够有一个或多个表空间,而一个表空间则对应着一个或多个物理的数据库...
  • 1、为什么要创建表空间?  答:在建立用户的时候,我们建议数据库管理员要指定用户的默认表空间。因为我们在利用CREATE语句创建数据库对象,如数据库的时候,其默认是存储在数据库的当前默认空间。若不...
  • 可以一次创建单个表空间,也可以一次性创建多个表空间 1.1创建单个表空间 create tablespace ts_something  logging  datafile    '/dbf1/ts_sth.dbf'      size 32m   ...
  • DB2表空间的管理

    千次阅读 2019-01-28 00:27:41
    DB2表空间的管理 表空间的作用 ​ ①表空间是用户逻辑对象的存储空间 ​ ②表空间在物理层上对应着若干个容器 ​ ③容器可以是目录、文件或者裸设备 ​ ④表空间是逻辑层与物理层的桥梁 ​ ⑤数据库可以有多个表空间...
  • Oracle 10g创建表空间的完整步骤详解

    千次阅读 2014-04-12 15:03:21
    Oracle 10g数据库中,当在数据库中创建用户时,基于应用性能和管理方面的考虑,最好为不同的用户创建独立的表空间。 那么创建表空间的步骤是怎样实现的呢?本文我们主要就介绍了这一部分内容,接下来就让我们一起来...
  • db2 系统临时表空间

    万次阅读 2014-05-26 14:28:15
    如果结果集中的行大小接近于现有系统临时表空间的最大行长度限制,那么可能需要创建具有更大页大小的系统临时表空间。 开始之前 确保具有 SYSCTRL 或 SYSADM 权限来在必要时创建系统临时表空间。 ...
  • Oracle创建表空间创建用户以及授权、查看权限 创建临时表空间 CREATE TEMPORARY TABLESPACE test_temp TEMPFILE 'C:\oracle\product\10.1.0\oradata\orcl\test_temp01.dbf' SIZE 32M AUTOEXTEND ON NEXT...
  • 前面有整理了一篇 Oracle 数据库(database...一、表空间(Tablespace) 讲表空间的话我就想到Oracle的逻辑存储结构了。所以还是简单讲讲吧,有机会再单独总结(抄袭)一篇。 在计算机技术中,逻辑就是虚拟的意思,...
  • 不要让临时表空间影响数据库性能

    千次阅读 2016-12-26 16:36:26
    --改变缺省临时表空间 为刚刚创建的新临时表空间temp2  4.drop tablespace temp including contents and datafiles;--删除原来临时表空间  5.create temporary tablespace TEMP TEMPFILE '/home2/oracle...
  • 【Oracle笔记】表空间的概念

    万次阅读 2018-03-29 23:51:51
    1、表空间的概念 ORACLE数据库被划分成称作为表空间的逻辑区域——形成ORACLE数据库的逻辑结构。一个ORACLE数据库能够有一个或多个表空间,而一个表空间则对应着一个或多个物理的数据库文件。表空间是ORACLE数据库...
  • ORACLE 表空间操作和的删除(一)

    千次阅读 2018-03-28 23:17:48
    最近在用IMP 命令导入dmp数据的时候,发现表空间无法扩展,一查,才发现表空间SYSTEM已经使用了31.2G。 经过查找资料,总结如下: 1.一般不在SYSTEM表空间存放业务数据; 2.SYSTEM表空间最大值是32G;-----所有...
  • Oracle 用户和表空间创建与删除

    千次阅读 2015-12-03 20:55:21
    刚开始接触Oracle数据库的小白我,分享一下在Oracle中如何创建用户及表空间和删除用户及表空间。首先,在进行Oracle进行操作时,要用到可视化工具PL/SQL Developer 。地址...
  • oracle 表空间创建

    千次阅读 2011-03-27 15:16:00
    表空间是Oracle数据库中的重要概念,下面就为您详细介绍Oracle创建表空间的语法,希望可以让您对Oracle创建表空间有更深的了解。Oracle创建表空间语法描述:CREATE [UNDO] TABLESPACE tablespace_name[DATAFILE ...
  • 创建缺省临时表空间;创建缺省临时表空间;缺省临时表空间的限制;只读表空间;使表空间脱机;更改存储设置;调整表空间大小;启用数据文件自动扩展;手动调整数据文件的大小;向表空间添加数据文件;移动数据文件的方法;移动...
  • Oracle之数据字典、表空间的操作、视图
  • 创建缺省临时表空间;创建缺省临时表空间;缺省临时表空间的限制;只读表空间;使表空间脱机;更改存储设置;调整表空间大小;启用数据文件自动扩展;手动调整数据文件的大小;向表空间添加数据文件;移动数据文件的方法;移动...
  • 创建表空间-CREATE TABLESPACE命令详解

    万次阅读 2013-09-08 10:58:34
    当然,也可以创建一般的表空间,在上面创建回滚段.不过对于用户来说,系统管理比自己管理要好很多.如果需要自己管理,请参见回滚段管理的命令详解. 当没有为系统指定回滚表空间时,系统将使用system系统回滚段来进行...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 141,340
精华内容 56,536
关键字:

创建缺省表空间