1、理解表空间
表空间是数据库的逻辑存储空间,用于存放数据库的对象,表空间包含多个数据文件。
2、表空间的分类
<1>永久表空间:表、视图等要永久存放的空间
<2> 临时表空间:用于存放数据库执行过程,执行结束之后内容会自动释放掉。
<3>undo表空间:当表进行修改时,会对表信息进行保存,这样可以进行回滚操作,也就是撤回操作。
3、查看用户表空间
<1> dba-tablespaces、dba-users:针对系统管理员登录查看的数据字典
user-tablespaces、user-users: 针对普通用户登录查看的数据字典
<2> 输入dbc-tablespaces可以看到有tablespaces-name字段,
select tablespaces-name from dbc-tablespaces
进行操作后会有六个默认的表空间
SYSTEM :存放sys用户的表视图
SYSAUX:example的辅助表空间
UNDOTBS1:存储撤销消息
TEMP:临时表空间
USERS:数据库用户创建数据库对象的表空间
EXAMPLE:安装oracle示例表空间
4、设置用户默认表空间或临时表空间
•ALTER USER username eg:SQL> ALTER USER system
DEFAULT|TEMPORARY DEFAULT
TABLESPACE tablespace_name TABLESPACE system
5、创建表空间(永久表空间、临时表空间两种类型)
•CREATE[TEPORARY] TABLESPACE
tablespace_name
TEMPFILE|DATAFILE '文件名.dbf ' SIZE 数据文件大小
eg:SQL>create tablespace //永久表空间
test1_tablespace
datafile ' test1file.dbf ‘ size 10M
6、修改表空间
<1>修改表空间的状态
(1) 联机与脱机,设置成 脱机状态后不能在使用该表空间
ALTER TABLESOACE tablespace_name
ONLINE(默认状态)|OFFLINE
(2) 设置只读或可读写状态
ALTER TABLESOACE tablespace_name
READ ONLY|READ WRITE(默认状态)
<2>修改表空间的数据文件
(1)增加数据文件
ALTER TABLESOACE tablespace_name
ADD DATAFILE '文件名.dbf ' SIZE 数据文件大小
(2)删除数据文件
ALTER TABLESOACE tablespace_name
DROP DATAFILE ' 文件名.dbf ' 不能把第一个数据文件删掉,若是要删掉则是把整个表空间删除
7、删除表空间
DROP TABLESPACE
tablespace_name [INCLUDING CONSTENTS]//若是不仅要删除表空间,还要删除其中的数据,则把中括号中的字加上