共计 1733 个字符,预计需要花费 5 分钟才能阅读完成。
这篇文章主要介绍 MANAGE 中 TABLESPACE 的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
一、官档
BOOK → Database SQL Language Reference → 12 SQL Statements: ALTER TABLE to ALTER TABLESPACE → ALTER TABLESPACE
二、扩容表空间
扩大数据库的第三种方法是手工增大数据文件(datafile)的容量或使表空间(tablespace)内的数据文件容量可以随需动态地增长。用户可以为已有或新建的数据文件设置动态扩展属性(dynamic extension properties)。
1、通过动态增大数据文件而为数据库扩容
ALTER TABLESPACE
DATAFILE 表空间存放的路径
AUTOEXTEND ON NEXT 大小 – 当表空间的大小不够时每次增长多少
MAXSIZE 大小 /MAXSIZE UNLIMITED
2、增加数据文件尺寸
ALTER DATABASE DATAFILE 表空间存放的路径 RESIZE 大小
3、为表空间添加数据文件
ALTER TABLESPACE ADD DATAFILE 表空间存放的路径 RESIZE 大小
4、为表空间删除数据文件
ALTER TABLESPACE 表空间名 DROP DATAFILE 路径 / 文件名
三、offline/online tablespace
当某些错误发生时,Oracle 会自动地将相关的联机表空间(online tablespace)切换到脱机(offline)状态。此时尝试访问脱机表空间内数据表的用户将会得到错误信息。用户必须在处理故障后恢复(recover)受影响的表空间。可以手动脱机表空间:
ALTER TABLESPACE 表空间名 OFFLINE;
1、Temporary(临时):
如果表空间中的一个或多个文件存在错误状态,也可以使表空间暂时脱机。当 Oracle 数据库使(尚未脱机的)数据文件脱机时,会对这些数据文件设置检查点。如果没有任何文件脱机,但是您使用了临时子句,则使表空间重新联机时便不需要执行介质恢复。但是,如果因写错误而导致表空间的一个或多个文件脱机,而此时您让表空间临时脱机,那么表空间需要执行恢复后才能重新联机。
2、Immediate(立即):
表空间可以立即脱机,Oracle 数据库不需要对任何数据文件设置检查点。如果指定了“Immediate(立即)”,则必须先对表空间执行介质恢复,才能使表空间联机。如果数据库在 NOARCHIVELOG 模式下运行,则无法立即使表空间脱机。
表空间脱机时,应注意以下几点:
1、Oracle 不允许任何 SQL 语句继续引用此表空间内的对象(schema object)。
2、Oracle 使用 SYSTEM 表空间内的延迟回滚段(deferred rollback segment)为正在运行的事务中已完成的 SQL 语句保存回滚信息(rollback data)。
3、SYSTEM 表空间内的数据字典(data dictionary)会进行记录。
4、SYSTEM 表空间、临时表空间、回滚表空间不允许脱机。
表空间联机:
ALTER TABLESPACE 表空间名 ONLINE;
四、read only tablespace
1、表空间只读
ALTER TABLESPACE 表空间名 READ ONLY;
2、表空间可读写
ALTER TABLESPACE 表空间名 READ WRITE;
五、drop tablespace
DROP TABLESPACE 表空间名称
[including contents/contents and datafiles] – 指删除表空间中的 segments| 指删除 segments 和 datafiles;
cascade constraints
(注:删除回退表空间:需要先切换,等待事务结束后,才能删除)
六、rename datafile
ALTER TABLESPACE USERS RENAME DATAFILE == TO ***
ALTER DATABASE RENAME FILE === TO ***
以上是“MANAGE 中 TABLESPACE 的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注丸趣 TV 行业资讯频道!