表空间可以通过添加数据文件或扩展现有的数据文件,来调整大小。
本地区间管理使用每个数据文件中的位图来跟踪区间分配。
创建表空间时,UNIFORM SIZE子句强制所有的区间采用相同的大小。
AUTOALLOCATE子句让Oracle确定下一区间的大小,Oracle将根据分配给段的区间数进行确定。
自动段空间管理使用位图跟踪区间每个块中的可用空间。
可将表空间从字典区间管理转换为本地区间管理,但不能将空闲列表段管理转换为自动管理。
说明Oracle数据库服务器如何自动管理空间
空间以区间的形式根据需求分配给段。区间的使用情况通过位图来追踪。
段中的空间使用情况位图在25%的带中跟踪。
通过压缩来节省空间
基本压缩通过直接的负载,减少了插入时的重复数据
先进的行压缩可以通过传统的DML维护重复数据删除的压缩
主动监控和管理表空间的使用情况
当表空间已填满85%(警告)和97%(重要)时,服务器警报系统就预配置为发出警报
不为临时或撤销表空间发出警报。
可以把任何表空间的报警阈值单独配置为任何值
使用段顾问
段顾问每天晚上运行为自动任务。
如果缩小表会释放大量的空间,就建议这样做。
段顾问会考虑历史使用情况以及当前的使用情况。
使用段收缩功能回收表和索引中浪费的空间
表收缩操作把行分配到段的前面,把自由空间释放到短尾。
收缩是一个在线、就地操作;运行时不需要额外的空间,对其他DML而言,表没有锁定.
管理可恢复的空间分配
可以给会话或实例启用可恢复的空间分配。
如果会话遇到空间错误,就会挂起,直到解决问题为止,或会话过期为止。
数据库触发器可以配置为暂停会话时触发。