在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
前言 表空间是 Oracle 特有的一种逻辑结构,是管理和组织 Oracle 数据文件一种方式,一个Oracle 数据库能够有一个或多个表空间,而一个表空间则对应一个或多个物理的数据库文件。Oracle 的表空间分为永久空间和临时表空间,同时又分为 smallfile tablespace和 bigfile tablespace。表空间管理是 Oracle dba的一项重要日常工作。 今天小编就从永久表空间管理和临时表空间管理两个维度,详细介绍 Oracle表空间管理的具体操作。 永久表空间管理 1.1 创建表空间 参数说明:
1.2 修改表空间 1、修改数据文件大小 SQL> ALTER DATABASE DATAFILE '/u01/app/oracle/oradata/TSH1/users01.dbf' RESIZE 10M; 2、增加表空间数据文件 ALTER TABLESPACE USERS ADD DATAFILE '/u01/app/oracle/oradata/TSH1/users02.dbf' SIZE 20M AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED; 注:日常工作中建议通过增加数据文件的方式给表空间扩容,因为对于在线业务系统来说,通过修改数据文件大小的方式,对业务会产生一定的影响。 1.3 重命名表空间 1) 设置表空间脱机 SQL> ALTER TABLESPACE USERS OFFLINE NORMAL; 2) 用一个操作系统实用程序重新命名此文件如UNIX的cp或mv,或者windows的copy命令 $cp /u01/app/oracle/test01.dbf /u02/app/oracle/test01.dbf 3) 在数据文件在线之前使用以下命令重命名数据库中的数据文件 SQL> ALTER TABLESPACE USERS RENAME DATAFILE '/u01/app/oracle/oradata/TSH1/users01.dbf' TO '/u02/app/oracle/oradata/TSH1/users01.dbf' 4)设置表空间online SQL> ALTER TABLESPACE USERS ONLINE ; 1.4 设置表空间只读 1) 设置表空间只读 SQL> ALTER TABLESPACE USERS READ ONLY; 2) 设置表空间再次可写 SQL> ALTER TABLESPACE USERS READ WRITE; 1.5 设置表空间脱机、联机 1)设置表空间脱机 SQL> ALTER TABLESPACE USERS OFFLINE NORMAL; 2)设置表空间联机 SQL> ALTER TABLESPACE USERS ONLINE; 1.6 删除表空间 SQL> DROP TABLESPACE USERS INCLUDING CONTENTS AND DATAFILES; 1.7 修改表空间为默认永久表空间 1)修改表空间为默认永久表空间 SQL>ALTER DATABASE DEFAULT TABLESPACE users; 2)查询当前数据库默认的永久表空间 SQL>SELECT property_value from database_properties where property_name='DEFAULT_PERMANENT_TABLESPACE'; 临时表空间管理
2.1 创建临时表空间 SQL> CREATE TEMPORARY TABLESPACE TEMP TEMPFILE '/u01/app/oracle/oradata/TSH1/temp01.dbf' SIZE 31M AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M; 参数说明:
2.2 修改临时表空间 SQL> ALTER DATABASE TEMPFILE '/u01/app/oracle/oradata/TSH1/temp01.dbf' RESIZE 60M; 2.3 删除临时表空间 SQL> DROP TABLESPACE TEMP INCLUDING CONTENTS AND DATAFILES; 2.4 临时表空间组管理 2.4.1 创建临时表空间组 SQL> CREATE TEMPORARY TABLESPACE TEMP TEMPFILE '/u01/app/oracle/oradata/TSH1/temp01.dbf' SIZE 31M AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED TABLESPACE GROUP tmpgrp1; 说明: 增加一个名为tmpgrp1的临时表空间组。 2.4.2 给临时表空间组增加表空间 SQL> ALTER TABLESPACE temp02 TABLESPACE GROUP tmpgrp2; 2.4.3 将一个组设置为默认临时表空间 SQL> ALTER DATABASE DEFAULT TEMPORARY TABLESPACE tmpgrp1; 表空间管理涉及的视图 为了管理ORACLE数据库的表空间,要熟悉几个关键的字典视图:
总结 以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对极客世界的支持。 |
请发表评论