1、使用多个TableSpace
* 用户数据与数据字典数据分离,减少竞争
* 应用程序之间的数据分离,防止某个TableSpace脱机后对多个程序造成影响
* 不同磁盘驱动器上存储数据,减少I/O竞争
* 回滚段数据与用户数据分离,防止单磁盘故障造成数据永久丢失
* 可以控制单个TableSpace脱机,提供更高的整体可用性
* 为特定类型数据库使用保留TableSpace,可优化TableSpace的使用
* 可以备份单独的TableSpace
2、指定表空间默认的存储参数
为TableSpace设置合适的参数,下文中详细介绍。
3、为用户指定表空间限额
可以有效控制TableSpace的大小,限制用户权限防止发生意外。
二、创建TableSpace
1、创建本地管理TableSpace
Oracle创建的TableSpace默认均是本地管理的,明确的表述应该是:
在CREATE TABLESPACE 语句中 EXTENT MANAGEMENT 子句中指定 LOCAL
然后可以用 AUTOALLOCATE 选项(默认)来使Oracle自动管理盘区
CREATE TABLESPACE lmtbsb DATAFILE '/u02/oracle/data/lmtbsb01.dbf' SIZE 50M
EXTENT MANAGEMENT LOCAL AUTOALLOCATE;
也可以使用一个指定大小(UNIFORM SIZE)的同意盘区来管理该TableSpace
CREATE TABLESPACE lmtbsb DATAFILE '/u02/oracle/data/lmtbsb01.dbf' SIZE 50M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K;
如果未指定盘区大小,则默认为1M,说明数据文件至少要大于1MB
注:如果TableSpace被期望用于包含需要不同盘区大小和拥有很多盘区的大小变动的对象,那选择AUTOALLOCATE是最好的选择。AUTOALLOCATE是一种管理TableSpace的简便方法,只是有可能会对一些空间造成浪费。如果需要准确控制未用空间,并能够精确预计为一个或多个对象要非配的空间和盘区大小,那就可以使用UNIFORM。
2、在本地管理TableSpace中指定段空间管理
可使用 SEGMENT SPACE MANAGEMENT子句来设置端控件的管理模式,有以下几种模式:
MANUAL(默认):使用段中管理空闲空间的空闲列表。
AUTO:使用位图来管理段中的空闲空间。又称为自动段空间管理。
AUTO立功了一种更加简单、有效的管理方法,完全消除了为表空间中创建的段指定和调整PCTUSED、FREELISTS、FREELISTS GROUPS属性的任何必要。
CREATE TABLESPACE lmtbsb DATAFILE '/u02/oracle/data/lmtbsb01.dbf' SIZE 50M
EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
注:LOB类型不能指定自动段空间管理。
3、修改本地管理TableSpace
* 不能讲本地管理TableSpace改为本地管理的temp TableSpace
* 不能改变TableSpace的段空间管理办法
* 本地管理TableSpace没有必要合并空闲盘区
* 可以添加数据文件
* 可以改变TableSpace状态(ONLINE/OFFLINE)
* 修改TableSpace为只读or只写
* rename数据文件
* 启用/禁用该TableSpace数据文件的自动盘区大小
4、创建字典管理的TableSpace
CREATE TABLESPACE tbsb
DATAFILE '/u02/oracle/data/tbsb01.dbf' SIZE 50M
EXTENT MANAGEMENT DICTIONARY
DEFAULT STORAGE (
INITIAL 50K
NEXT 50K
MINEXTENTS 2
MAXEXTENTS 50
PCTINCREASE 0);
使用ALTER TABLESPACE语句可以进行以下操作:
* 添加一个新的文件
* 改变默认的存储参数
* 合并TableSpace的空闲空间
* 可以改变TableSpace状态(ONLINE/OFFLINE)
* 修改TableSpace为只读or只写
* rename数据文件
* 启用/禁用该TableSpace数据文件的自动盘区大小
5、临时表空间
临时表空间主要用于提高多个排序操作的并发能力、减小开销,或避免Oracle空间管理操作在一起进行。临时表空间创建之后,可以被多个用户共享。
一个给定实例和表空间的所有排序操作共享一个单一的排序段。即排序段为一个给定表空间的每个执行排序操作的实例而存在。
排序段由使用临时表空间用于排序的第一个语句创建,并在关闭时释放,一个盘区不能被多个事务共享。
可以使用V$SORT_SEGMENT视图来查看临时表空间排序段的空间分配和回收情况
用V$SORT_USAGE视图查看这些段的当前排序用户
注:临时表空间中不能创建明确对象。
6、创建本地管理的临时表空间
CREATE TEMPORARY TABLESPACE lmtemp TEMPFILE '/u02/oracle/data/lmtemp01.dbf' SIZE 20M REUSE
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 16M;
注1:临时数据文件信息查询与数据文件不同,需要查询V$TEMPFILE和DBA_TEMP_FILES,但结构与V$DATAFILE和DBA_DATA_FILES类似。
注2:临时表空间在初次使用时才分配空间,可以更快创建和修改大小,但要注意磁盘大小。
7、本地管理临时表空间的修改
* 添加临时文件
ALTER TABLESPACE lmtemp ADD TEMPFILE '/u02/oracle/data/lmtemp02.dbf' SIZE 20M REUSE;
* 改变临时文件状态
ALTER DATABASE TEMPFILE '/u02/oracle/data/lmtemp02.dbf' ONLINE|OFFLINE;
* 更改临时文件大小
ALTER DATABASE TEMPFILE '/u02/oracle/data/lmtemp02.dbf' RESIZE 4M;
* 取消临时文件并删除相应操作系统文件
ALTER DATABASE TEMPFILE '/u02/oracle/data/lmtemp02.dbf' DROP
INCLUDING DATAFILES;
8、创建字典管理的临时表空间
CREATE TABLESPACE sort
DATAFILE '/u02/oracle/data/sort01.dbf' SIZE 50M
DEFAULT STORAGE (
INITIAL 2M
NEXT 2M
MINEXTENTS 1
PCTINCREASE 0)
EXTENT MANAGEMENT DICTIONARY
TEMPORARY;
注1:不能以这种方式创建EXTENT MANAGEMENT LOCAL的临时表空间。
注2:可以使用ALTER TABLESPACE tbsa TEMPORARY;语句将一个现有的字典管理永久表空间改为临时表空间。
相关推荐
"create, delete tablespace user"这个主题聚焦于Oracle数据库中的关键操作,包括创建和删除表空间以及用户。表空间是Oracle数据库中存储数据的逻辑单元,而用户则是数据库的访问主体。下面将详细阐述这些概念及其...
接下来,我们将详细解析这一创建表空间的具体命令及其含义。 #### 命令详解 ```sql CREATETABLESPACE HFS DATAFILE 'G:\ORACLE\ORADATA\RCS\USERS01.DBF' SIZE 1371840K AUTOEXTEND ON NEXT 1280K MAXSIZE ...
2. **创建表空间**:接着,使用CREATE TABLESPACE语句创建表空间,并指定数据文件。 ```sql CREATE TABLESPACE 表空间名 DATAFILE '/path/to/datafile.dbf'; ``` 例如: ```sql CREATE TABLESPACE test_...
本文介绍了Oracle数据库中表空间创建和用户创建的基本概念与操作方法。通过对示例SQL语句的分析,可以了解到如何创建表空间、添加数据文件以及如何创建用户并设置相关的属性和权限。这些知识对于Oracle数据库管理员...
- **表空间的概念**:在创建用户之前,必须先创建表空间。表空间是Oracle数据库中逻辑存储结构的一部分,用于组织和管理数据文件。 #### 二、创建表空间 表空间是存储数据的容器,在创建用户前必须创建。其创建...
五、相关概念 1. 角色权限:角色权限是指用户在数据库中的角色,例如 connect、resource 等。 2. 系统权限:系统权限是指用户在数据库中的系统权限,例如 unlimited tablespace 等。 3. 配额权限:配额权限是指用户...
在IT行业中,数据库管理是至关重要的任务之一,特别是在Oracle和PostgreSQL这样的大型关系型数据库管理系统中。本篇文章将深入探讨如何...理解这些概念和操作,能够帮助你更好地管理和维护数据库,确保业务的顺畅运行。
- `CREATE TABLESPACE`是创建表空间的关键字。 - `ndgl_isc_data`为新建表空间的名称。 - `DATAFILE`后跟的是该表空间对应的数据文件路径和文件名。 - `SIZE 500M`表示此数据文件的初始大小为500MB。 #### 创建临时...
### 三、用户的创建及权限分配 #### 用户创建语法: ```sql CREATE USER username IDENTIFIED BY password DEFAULT TABLESPACE default_tablespace_name TEMPORARY TABLESPACE temp_tablespace_name; ``` #### ...
### Oracle 创建用户及数据表的思路方法 #### 一、概念理解 在开始具体操作之前,我们需要先了解一些基本的概念。 ##### 1. 数据库(Database) **定义**:数据库是一种按照某种数据模型组织起来,并存储在二级...
首先,让我们了解表空间的基本概念。在Oracle中,表空间是存储数据文件的容器,这些数据文件实际存储了数据库的数据和元数据。表空间的创建有助于管理和分配数据库的物理存储空间。创建表空间的SQL语句如下: ```...
#### 一、表空间的概念 表空间是Oracle数据库中用于组织存储空间的一种逻辑结构。每个Oracle数据库至少包含一个表空间,默认情况下为`SYSTEM`表空间。表空间由一个或多个数据文件组成,这些数据文件存储在操作系统...
本教程将围绕“101创建表空间及用户脚本”这一主题,讲解如何在数据库环境中创建表空间以及相关的用户脚本。 首先,我们来理解表空间的基本概念。在Oracle数据库系统中,表空间是数据库中存储数据和索引的逻辑结构...
本文将深入探讨 Oracle 数据库中的本地管理表空间(Locally Managed Tablespace,简称 LMT)的概念、优势及其内部工作原理。LMT 是 Oracle 提供的一种高级表空间管理方式,它在数据文件级别管理存储空间,通过位图...
- `CREATE TEMPORARY TABLESPACE`: 指令用于创建临时表空间。 - `TEMPFILE`: 定义临时表空间的数据文件路径。 - `SIZE`: 定义初始大小为32MB。 - `AUTOEXTEND ON`: 允许数据文件自动扩展。 - `NEXT 32M MAXSIZE 2048...
#### 一、Oracle 表空间概念 在 Oracle 数据库中,表空间是逻辑存储单元,用于组织和管理数据库中的数据。一个表空间由一个或多个数据文件组成,这些数据文件存储在操作系统级别的文件系统中。表空间可以分为永久表...
PowerDesigner创建数据库及模型PPT课件 PowerDesigner是Sybase公司的CASE工具集,使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程。PowerDesigner可以制作面向对象模型(OOM)、...
以下将详细介绍这些概念及其创建与授权的过程。 1. **表空间(Tablespaces)** 表空间是Oracle数据库中存储数据的逻辑单位,它由一个或多个数据文件(Datafiles)组成。创建表空间的目的是为了组织和管理数据库...
根据提供的文件信息,本文将详细解释Oracle中创建表空间、用户及权限授予的相关知识点。 ### Oracle 创建表空间 #### 1. 表空间概念 在Oracle数据库中,表空间是逻辑存储单元,它由一个或多个数据文件组成,用于...