表空间

 

在数据库系统中,存储空间是较为重要的资源,合理利用空间,不但能节省空间,还可以提高系统的效率和工作性能。 Oracle 可以存放海量数据,所有数据都在数据文件中存储。而数据文件大小受操作系统限制,并且过大的数据文件对数据的存取性能影响非常大。同时Oracle 是跨平台的数据库, Oracle 数据可以轻松的在不同平台上移植,那么如何才能提供统一存取格式的大容量呢? Oracle 采用表空间来解决。
表空间只是一个逻辑概念,若干操作系统文件(文件可以不是很大)可以组成一个表空间。表空间统一管理空间中的数据文件,一个数据文件只能属于一个表空间。一个数据库空间由若干个表空间组成。如图所示:

 

 

Oracle 中所有的数据(包括系统数据),全部保存在表空间中,常见的表空间有:

Ø系统表空间:存放系统数据,系统表空间在数据库创建时创建。表空间名称为
SYSTEM。存放数据字典视图以及数据库结构等重要系统数据信息,在运行时如
果 SYSTEM 空间不足,对数据库影响会比较大,虽然在系统运行过程中可以通过命
令扩充空间,但还是会影响数据库的性能,因此有必要在创建数据库时适当的把数
据文件设置大一些。
ØTMEP 表空间:临时表空间,安装数据库时创建,可以在运行时通过命令增大临时
表空间。临时表空间的重要作用是数据排序。比如当用户执行了诸如 Order by 等
命令后,服务器需要对所选取数据进行排序,如果数据很大,内存的排序区可能装
不下太大数据,就需要把一些中间的排序结果写在硬盘的临时表空间中。
Ø用户表自定义空间:用户可以通过 CREATE TABLESPACE 命令创建表空间

 

创建表空间

 

--创建表空间 linux centos6.9

--创建一个表空间,包含两个数据文件大小分别是 10MB, 5MB,要求 extent 的大小统一为 1M

CREATE
TABLESPACE nod_tablespace

DATAFILE
'/home/oracle/tablespace/A.ORA'
SIZE
10M,

'/home/oracle/tablespace/B.ORA'
SIZE
5M

EXTENT
MANAGEMENT
LOCAL

UNIFORM
SIZE
1M

 

 

windows版本创建表空间

请注意:只有管理员才可以增加表空间

当表空间不足的时候可以用alter tablespace命令向表空间中追加数据文件并扩充表空间

修改表空间大小

--扩充表空间

 

 

ALTER
TABLESPACE nod_tablespace

ADD
DATAFILE
'/home/oracle/tablespace/C.ORA'
SIZE
100M

 

--查看表空间情况

SELECT
SUM(bytes) / (1024 * 1024) AS free_space, tablespace_name

FROM dba_free_space

GROUP
BY tablespace_name;

 

创建用户时可以为用户指定某一表空间,那么该用户下所有数据库对象默认都存储在该空间中

指定用户的表空间为

create user nod identified by nod default tablespace nod_tablespace;

 

创建表指定表空间

create
table t2(id
int)

tablespace nod_tablespace

 

 

表和索引一旦创建,表空间无法进行二次修改

 

Oracle 表空间的概念的更多相关文章

  1. Oracle表空间,用户,用户授权

    一:Oracle表空间 1,Oracle表空间与SQL Server文件组对比 SQL Server的文件组(文件组包括若干MDF,NDF数据文件)对我们来说并不陌生,前段时间我在博客“怎样玩转千万级 ...

  2. Oracle表空间管理

    oracle表空间相关常用命令小结: 1.ALTER DATABASE SET DEFAULT BIGFILE TABLESPACE;              //修改表空间数据文件类型 2.ALT ...

  3. 【转】Oracle 表空间与数据文件

    --============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或 ...

  4. Oracle表空间、段、区和块

    数据块(Block) 数据块Block是Oracle存储数据信息的最小单位.注意,这里说的是Oracle环境下的最小单位.Oracle也就是通过数据块来屏蔽不同操作系统存储结构的差异.无论是Windo ...

  5. interview:about Oracle表空间

    Oracle表空间 SQL Server数据库与Oracle数据库之间最大的区别要属表空间设计.Oracle数据库开创性地提出了表空间的设计理念,这为Oracle数据库的高性能做出了不可磨灭的贡献.可 ...

  6. Oracle 表空间与数据文件

    -============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或多 ...

  7. oracle 表空间总结

                           表空间总结  一.认识表空间 1:表空间概念: 表空间是数据库中最大的逻辑单位,Oracle数据库采用表空间将相关的逻辑组件组合在一起,一个Oracle数 ...

  8. Oracle 表空间、段、区和块简述

    数据块(Block) 数据块Block是Oracle存储数据信息的最小单位.注意,这里说的是Oracle环境下的最小单位.Oracle也就是通过数据块来屏蔽不同操作系统存储结构的差异.无论是Windo ...

  9. oracle 表空间tablespace

    一.Oracle 表空间的组成 Everoone knows Oracle数据库真正存放数据的是数据文件,Oracle表空间是逻辑上的概念,他在物理上是并不存在的,把多个DataFile合并到一起就是 ...

随机推荐

  1. #366 A-C

    A. Hulk 题意是给你一个n 输出一个英文字符串,找下规律就发现 当(i!=n&&i%2==1) 输出的是 I hate that (注意大写) 当(i!=n&&i ...

  2. hdu2461 Rectangles 线段树--扫描线

    You are developing a software for painting rectangles on the screen. The software supports drawing s ...

  3. Eclipse实现数据库反向生成实体类(pojo)-------(插件安装和实现步骤的说明)

    一.插件安装 1.下载插件: http://jaist.dl.sourceforge.net/sourceforge/jboss/HibernateTools-3.2.4.Beta1-R2008103 ...

  4. python 字符串,列表,元组,字典相互转换

    1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} 字典转为字符串,返回:<type 'str'> {'age': 7, 'n ...

  5. H3C路由器映射端口到外网

    登录路由器web管理端 选择高级设置->虚拟服务器->新增虚拟服务器

  6. Unity3D\2D手机游戏开发 学习

    using UnityEngine; using System.Collections; [AddComponentMenu("Game/AutoDestroy")] public ...

  7. oracle-闪回技术2

    闪回版本查询,用到了附加日志 闪回事务查询 http://blog.csdn.net/laoshangxyc/article/details/12405459 这个博客的备份与恢复可以参考 ##### ...

  8. Spring的两种动态代理:Jdk和Cglib 的区别和实现

    这是有意义的一天!自己研究一路畅通的感觉真爽 原理是参考大神的,代码手敲 一.原理区别: java动态代理是利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处 ...

  9. CIDR合并

    code #include <iostream> #include <list> #include <sstream> #include <vector> ...

  10. mysql查询各个知识点

    临时表 group by http://www.ywnds.com/?p=10174 https://blog.csdn.net/wuseyukui/article/details/72627667 ...