3、oracle之表空间

2018-08-22  本文已影响0人  如果不是废物谁又愿混吃等死

表空间:  表空间是数据库的逻辑存储空间。可以理解为在表空间中开辟一个空间用来存储数据库的对象(数据库实例)。一个数据库可以由多个表空间构成。可用过表空间进行优化 ,由多个数据文件组成。

数据文件:  用来存放数据表,存储过程以及视图等数据;

永久表空间:表、视图、存储过程等

临时表空间:用来存放进行数据库操作的中间执行的过程,当执行结束之后存放的东西就会被自动的释放掉,不会进行永久性的保存。

UNDO表空间:执行事务时保存表之前的状态,便于回滚

Dba_tablespaces该数据字典针对的系统管理员级的用户来查看的数据字典,

user_tablespace该数据字典为普通用户登录后来查看的数据字典。

作为系统管理员登录的时候,对应的表空间(dba_tablespaces下面的表空间)默认情况下为这6个:

System:用来存放sys用户的表、视图以及存储过程的数据库对象,也被我们称为是一个系统表空间。

Sysaux:作为example的一个辅助表空间。

Undotbs1:主要用于存储撤销信息的。

Temp:存储sql语句处理的表和索引信息的,他是一个临时表空间。

Users:属于一个永久性表空间,存储数据库用户创建的数据库对象。

更改默认空间:alter user system default tablespace system(表空间名);

创建表空间

永久表空间:  create tablespace test1_tablespace datafile 'test1file.dbf' size 10m;

临时表空间: create temporary tablespace test2_tablespace tempfile 'test2file.dbf' size  10m;

表空间即文件/临时文件

查看文件名:select file_name from dba_data_files where tablespace_name='test1_tablespace';

设置表空间的读写状态:

ALTERTABLESPACE tablespacename READONLY;  --只读状态

ALTERTABLESPACE tablespacename READWRITE;  --读写状态

设置表空间的状态(脱机/联机):

ALTERTABLESPACE tablespacename OFFLINE;

ALTERTABLESPACE tablespacename ONLINE;

查看表空间状态

SELECT tablespace_name,status FROM dba_tablespaces;

增加、删除数据文件

alter tablespace tablespace_name add datafile ‘xxx.dbf’size xx;

alter tablespace tablespace_name drop datafile ‘xxx.dbf’;

在删除表空间数据文件的时候,不能够删除表空间中第一个数据文件,也就是说不能够删除我们创建表空间的时候创建的第一个数据文件,如果要删除的话,则必须要把整个表空间删除掉。

删除表空间:

drop tablespace (表空间的名字) test1_tablespace including contents(如果在删除表空间的时候将表空间的数据文件一并删除,则需要加上 incuding contents)

表空间、数据文件一并删除

drop tablespace test1_tablespace including contents and datafiles ;

上一篇 下一篇

猜你喜欢

热点阅读