服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > 数据库技术 > Oracle技术 > Oracle开发 > 查看文档

oracle数据库中管理表空间和数据文件 (1)

【赛迪网-it技术报道】oracle数据库中管理表空间和数据文件

数据库的三大组成部分:数据文件,控制文件,redo日志。

表空间分为系统表空间和非系统表空间。

system表空间是最基本的,必须的,oracle建议你为用户数据,用户索引,undo数据段,临时数据段创建单独的表空间。

管理员可以对表空间执行以下管理操作:

1.新建表空间,调整数据文件大小,添加数据文件到表空间。

2.设置和修改缺省的数据段存储设置。

3.使表空间变为只读或读写状态。

4.设置表空间为临时或永久。

5.删除表空间。

创建表空间的命令:

sql> create tablespace userdat datafile '/home/oracle/oradata/userdat01.dbf' size 10m autoextend on next 1m maxsize 20m;

tablespace created.

表空间中的extents可以由数据字典表或位图进行管理,创建表空间时可以选择:

本地管理表空间:extent management local

字典管理表空间:extent management dictionary

undo表空间:

仅用于存储undo数据段,extent只能采用本地管理。

temp表空间:

仅用于排序操作,不包含任何永久对象,extent推荐采用本地管理。

以下命令用于指定系统的缺省临时表空间:

sql> alter database default temporary tablespace temp;

表空间离线:

离线的表空间无法访问,用于数据维护。

system表空间,有活动undo段的表空间和缺省的临时表空间不能置于离线状态。

操作命令:

sql> alter tablespace users offline;

tablespace altered.

sql> alter tablespace users online;

tablespace altered.

将表空间置为只读模式和读写模式:

sql> alter tablespace users read only;

tablespace altered.

sql> alter tablespace users read write;

tablespace altered.

删除表空间:

sql> drop tablespace userdat including contents and datafiles;

tablespace dropped.

手工改变数据文件的大小:

sql> alter database datafile '/home/oracle/oradata/gldb/users01.dbf' resize 20m;

database altered.

添加数据文件到表空间:

sql> alter tablespace users add datafile '/home/oracle/oradata/gldb/users02.dbf' size 1m;

tablespace altered.

设置表空间数据文件的缺省位置:

sql> alter system set db_create_file_dest = '/home/oracle/oradata/gldb';

system altered.

sql> create tablespace userdat2 datafile size 2m;

tablespace created.

[oracle@redhatoracle gldb]$ pwd

/home/oracle/oradata/gldb

[oracle@redhatoracle gldb]$ ls -l | grep userdat2

-rw-r----- 1 oracle oinstall 2105344 dec 16 06:53 o1_mf_userdat2_2r69vob3_.dbf

获得表空间和数据文件信息:

sql> select * from v$tablespace;

sql> select * from v$datafile;

扫描关注微信公众号