1.表空间的概述

  1. 1. 表空间是数据库的逻辑组成部分。
  2. 2. 从物理上讲,数据库数据存放在数据文件中;
  3. 3. 从逻辑上讲,数据库是存放在表空间中,表空间由一个或者多个数据文件组成。

2.oracle的逻辑组成

  1. 1.oracle 的逻辑结构包含 空间
  2. 2.数据库是由表空间构成,表空间又是有段构成,段是由区构成,区是由 oracle的块构成,这样做是为了提高数据库的效率
  3. 3.作用
  4. A.控制数据库占用的磁盘空间
  5. B dba 可以将不同数据类型部署到不同的位置,这样 有利于i/0的性能,同时利于备份和恢复等管理

3.查询Oracle的表空间

  1. select tablespace_name from dba_tablespaces;

4.创建表空间的语法和步骤

  1. 1.创建表空间采用create tablespace命令完成
  2. 2.需要注意的是一般情况下,建立表空间,是特权用户和dba来执行的。如果其他用户要创建必须要有 create tablespace 的系统权限

5.案例: 创建一个表空间

  1. create tablespace data01 datafile 'd:\test\data01.dbf' size 20m uniform size 128k;
  2. // 说明:创建一个名称为 data01 的表空间,并为该表空间建立一个名称为data.01.dbf的数据文件,区的大小为128k

上面是关联一个数据文件,下面是关联两个数据文件

  1. create tablespace data02 datafile 'd:\test\data021.dbf' size 20m,'d:\test\data022.dbf' size 20m uniform size 128k;

6.案例: 使用自定义的表空间

  1. create table mydept(deptno number(4),dname varchar2(14),loc varchar2(13)) tablespace data01;
  2. //如果不指定表空间,就默认放在 SYSTEM 表空间下
  3.  
  4. create table emp(empno,ename) tablespace data01 as select empno,ename from scott.emp;
  5. //利用其他方案的表创建自己的表后放在自定义表空间下

7.什么是表空间的状态

  1. 当建立表空间的时候,表空间处于联机的(online)状态,此时表空间是可以访问的,并且是可以读写,既可以在表空间上执行各种语句。
  2. 但是在进行系统维护或者数据维护的时候,可能需要改变表空间的状态(脱机,联机,只读)。 一般由特权用户和dba来操作

8.表空间脱机

  1. alter tablespace 表空间名 offline;

9.使表空间联机

  1. alter tablespace 表空间名 online;

10.只读表空间

  1. alter tablespace 表空间 read only;
  2. // 当建立表空间时,表空间可以读写,如果不希望在表空间上执行update ,delete ,insert 操作,那么可以将表空间修改为只读

11.改为读写表空间

  1. alter tablespace tbs001 read write;

12.显示表空间中的所有表

  1. select * from user_tables where TABLESPACE_NAME='DATA01';
  2. //个人发现在oralce系统中 系统表 或者 视图 是区分大写)

13.查看某表所在的表空间 (知道表名)

  1. select tablespace_name,table_name from user_tables where table_name='EMP';

14.删除表空间

  1. drop tablespace DATA01 including contents and datafiles;
  2. // 说明: including contents 表示删除表空间时候,删除该表空间的所有数据对象,而datafiles 表示将数据库文件也删除。

15. 扩展表空间 oralce 有3中方法

  1. 1.添加数据文件 alter tablespace TBS001 add datafile 'd:\tbs002.dbf' size 20m;
  2. 2.增加数据文件的大小 alter database datafile 'd:\tbs001.dbf' resize 20m;
  3. 3.设置自动增长 alter database datafile 'd:\tbs002.dbf' autoextend on next 10m maxsize 500m; //9i前每个数据文件是有大小的.之后的版本有人说没有大小限制(取决自己磁盘)

16.移动数据文件(处理磁盘损坏的时候,将数据文件进行迁移)

  1. 1.找出数据文件对应的 表空间
  2. select tablespace_name from dba_data_files where file_name='D:\TBS001.DBF';
  3. 2.使表空间脱机 确保数据文件的一致性
  4. alter tablespacce tbs001 offline;
  5. 3.使用命令移动数据文件到指定的目标位置 sqlplus中能成功,PL/Sql中不能成功 应是我不知道)
  6. host move d:\tbs001.dbf c:\tbs001.dbf;
  7. 4.修改表空间对应的数据文体 为新磁盘下的数据文件
  8. alter tablespace TBS001 rename datafile 'D:\TBS001.DBF' to 'E:\TBS001.DBF';
  9. 5.使表空间联机
  10. alter tablespace TBS001 online;

17.查询表空间的信息

  1. select * from dba_tablespaces;

18.查询表空间的所有的数据文件

  1. select file_name,bytes from dba_data_files where tablesapce_name='TBS001

19.表空间的状态

  1. offlineonline read only read write;

20.其他常用的表空间

  1. 1.索引表空间
  2. 2.undo表空间
  3. 3.临时表空间
  4. 4.非标准块的表空间

有时候我们在建表的时候,会遇到如下的命令:

  1. create table X_SMALL_AREA
  2. (
  3. SMALL_AREA_ID NUMBER(10) not null
  4. )
  5. tablespace TBSL_SDDQ --表段X_SMALL_AREA放在表空间TBSL_SDDQ
  6. pctfree 10 --块保留10%的空间留给更新该块数据使用
  7. initrans 1 --初始化事务槽的个数
  8. maxtrans 255 --最大事务槽的个数
  9. storage --存储参数
  10. (
  11. initial 64k --区段(extent)一次扩展64k
  12. minextents 1 --最小区段数
  13. maxextents unlimited --最大区段无限制
  14. );

关于pctfree的相关知识,可以查看文章“oracle pctfree和pctused详解

原文链接:Oracle tablespace 表空间创建和管理

【Oracle 】tablespace 表空间创建和管理的更多相关文章

  1. oracle表空间创建及管理

    一.数据文件和数据库逻辑存储结构: 一个表空间包含一个或多个数据文件,一个表空间包含一个或多个段,一个段包含一个或多个区,一个区包含一个或多个连续的数据库块,一个数据库块包含一个或多个操作系统块.段是 ...

  2. oracle数据库表空间创建&导入&导出

    1.表空间创建 --删除表空间 drop tablespace EVPBDMGIS including contents and datafiles; --删除用户 drop user EVPBDMG ...

  3. Oracle数据库表空间创建、添加用户并授权

    --创建test表空间CREATE TABLESPACE test_data LOGGING DATAFILE '/u01/app/oracle/oradata/test/test_data.dbf' ...

  4. oracle 建表空间->创建用户并把表空间分配给用户->给用户授权->导库

    首先注意:我参考网上使用的sysdba模式(normal)登陆的,其他的模式建不了用户(个人没有进行其他模式的表空间尝试,如有人尝试欢迎补充,感激不尽) 表空间相当于表的容器(一下所有的操作都适用于o ...

  5. Oracle数据库——表的创建与管理

    一.涉及内容 1.掌握使用OEM工具创建.修改和删除表. 2.掌握使用SQL语句创建.修改和删除表. 3.掌握使用SQL语句插入.修改和删除数据. 4.理解各种约束的作用,并能够使用OEM工具和SQL ...

  6. Oracle基础表空间建立,以及练习

    Oracle的表空间创建,可以采用网页的https://127.0.0.1:1158/em来进入oracle的页面进行创建表空间. 利用plsqldev.exe程序在表空间里添加数据: 首先要在use ...

  7. Oracle创建表空间、用户管理、角色管理

    内容:Oracle创建表空间.用户管理.角色管理 1.用系统用户登录Oracle 默认的系统用户: sys/system.sysman.scott sys:权限最大,超级用户,可以完成所有任务, 默认 ...

  8. oracle 表空间创建和删除

    oracle数据库:数据库对象以及表数据都存储在表空间中,创建用户时可以指定对应的表空间.这样用户可以在各自的表空间中操作数据,互不干扰. 1. 表空间创建 若不清楚表空间对应文件的路径,可以登录系统 ...

  9. oracle之表空间(tablespace)、方案(schema)、段(segment)、区(extent)、块(block)

    数据文件和日志文件是数据库中最关键的文件.它们是数据存储的地方.每一个数据库至少有一个与之相关的数据文件,通常情况下不仅仅一个,有非常多.数据在数据文件里是怎样组织的?要了解这些内容我们首先必须理解什 ...

随机推荐

  1. 转: Vim快捷键分类

    Vim快捷键分类 http://www.cnblogs.com/jikey/archive/2011/12/28/2304341.html  一. 移动:    h,j,k,l: 左,下,上,右.   ...

  2. Centos7中安装Docker

    1.配置docker镜像安装源 tee /etc/yum.repos.d/docker.repo <<-'EOF' [dockerrepo] name=Docker Repository ...

  3. AppScan--图解Web扫描工具IBM Security App Scan Standard

    App Scan用法:   首先打开IBM Security AppScan Standard 工具   点击 创建新的扫描 ->  点击”常规扫描“ ->之后你就会看到如下图:     ...

  4. APP注册邀请码

      小火箭:MrZOpba685OMLSpanBKFtkxcQf5eGOY   文章来源:刘俊涛的博客 欢迎关注,有问题一起学习欢迎留言.评论

  5. Twip和Pixel

    pixel(像素) 可在屏幕或打印机上显示的最小元素.像素与屏幕无关. 各种显示类型的设计 Microsoft Windows 是与设备无关的-基于窗口的应用程序可以在许多不同显示分辨率与颜色浓度的计 ...

  6. Configuring the launch of the remote virtual machine to debug

    Options need to be added to the standard launch of a virtual machine (VM) to enable the debugging ar ...

  7. Java远程方法协议(JRMP)

    Java远程方法协议(英语:Java Remote Method Protocol,JRMP)是特定于Java技术的.用于查找和引用远程对象的协议.这是运行在Java远程方法调用(RMI)之下.TCP ...

  8. 〖Linux〗Shell十进制数值转换十六进制

    dec2hex(){ printf } a=$(dec2hex ) echo $a

  9. python之实现ftp上传下载代码(含错误处理)

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #python之实现ftp上传下载代码(含错误处理) #http://www.cnblogs.com/kait ...

  10. 三种常用的MySQL建表语句

    MySQL建表语句是最基础的SQL语句之一,下面就为您介绍最常用的三种MySQL建表语句,如果您对MySQL建表语句方面感兴趣的话,不妨一看. 1.最简单的: CREATE TABLE t1(    ...