如何缩小系统表空间?

hnsa1010 2004-02-14 09:04:14
在AIX操作系统下安装ORACLE9I,系统表空间占用了2G,实际系统只需800M就可以了,如何把多占用的表空间腾出来。高分请教!将现有系统做冷备份,然后重装系统,再将除系统表空间的数据文件考回去行吗?
...全文
210 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jack_4826 2004-09-04
  • 打赏
  • 举报
回复
表空间大小是逻辑概念,该表空间的所有数据文件之和就是表空间大小,
你可以在oem中,直接修改系统文件的大小,当然可以缩小。
zwj0712 2004-09-03
  • 打赏
  • 举报
回复
减小你的数据文件!!!!
hnsa1010 2004-09-03
  • 打赏
  • 举报
回复
专家们都说系统表空间不能缩小,所以重新装了,谢谢各位!
okcsdn 2004-06-09
  • 打赏
  • 举报
回复
应该使用重新导入的方法吧。
beckhambobo 2004-06-09
  • 打赏
  • 举报
回复
导出,删除,再导入
xbm2008 2004-06-09
  • 打赏
  • 举报
回复
我记得只能用ALTER DATABASE DATAFILE 'XXXXX' RESIZE 增大表空间
不能缩小呀, 如果要缩小的话还是楼上的方法好
guishuanglin 2004-06-08
  • 打赏
  • 举报
回复
我来看看:
ALTER DATABASE DATAFILE 'XXXXX' RESIZE 最小的Resize值M
XXXXX是表空间对应的数据文件名

可以减到最小的Resize值=当前表空间利用(M) + 1

select max((a.blocks+a.block_id)*to_number(b.value)/1024/1024) as "当前表空间利用(M)",a.tablespace_name
from dba_extents a,v$parameter b
where b.name='db_block_size'
group by a.tablespace_name
order by 2
==================================就行了
alter tablespace <tablespace_name> coalesce
表空间的大小不会变,变的是使用率
他可以让你看到使用了多少空间,但不会收缩大小的。
如果直接对文件操作就可以改变空间大小
guishuanglin 2004-06-08
  • 打赏
  • 举报
回复
alter tablespace temp1 add tempfile '%oracle_home%\ora902\temp1_1.dbf' size 10m;
直接收缩表空间文件
可以解决你的问题

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧