免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1901 | 回复: 9
打印 上一主题 下一主题

求助磁盘空间的问题(紧急) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-05-29 22:13 |只看该作者 |倒序浏览
各位好:
     现在ORACLE磁盘空间已经满了,我看见一个表的数据在A.DBF文件中,然后我就把这个表的数据TRUNCATE 这个表,但是这个A.DBF文件占的磁盘空间没有被释放,求救怎样我才能让A.DBF文件里的空间释放了.
    谢谢各位了 ,非常感谢!!!

论坛徽章:
0
2 [报告]
发表于 2007-05-29 22:58 |只看该作者
原帖由 Tsinghuazhl 于 2007-5-29 22:13 发表
各位好:
     现在ORACLE磁盘空间已经满了,我看见一个表的数据在A.DBF文件中,然后我就把这个表的数据TRUNCATE 这个表,但是这个A.DBF文件占的磁盘空间没有被释放,求救怎样我才能让A.DBF文件里的空间释放了.
     ...


truncate table并不能释放文件大小。
可以尝试:
alter database datafile '/xx/xx/a.dbf' resize xxxxM-->(你想保留的大小,以m为单位,例如500m)
datafile能不能被resize要看datafile中存储的segment的位置,如果有segment在datafile尾部写了东西,则无法resize。

如果a.dbf文件只存放了一个表,则可以考虑将这张表通过move tablespace,然后将a.dbf直接drop,一切以实际情况为准。做好备份最主要。

论坛徽章:
0
3 [报告]
发表于 2007-05-30 09:30 |只看该作者

恢复

a.dbf下面有好多表,而且还都是现在用的,我想把a.dbf文件从一个路径下移到另外一个磁盘有空间的路径下面去,
我怎么做才能实现,不好意思 我是是刚学,在linux下是用 mv就可以了吗? 非常感谢 !!!!

论坛徽章:
0
4 [报告]
发表于 2007-05-30 09:50 |只看该作者
原帖由 Tsinghuazhl 于 2007-5-30 09:30 发表
a.dbf下面有好多表,而且还都是现在用的,我想把a.dbf文件从一个路径下移到另外一个磁盘有空间的路径下面去,
我怎么做才能实现,不好意思 我是是刚学,在linux下是用 mv就可以了吗? 非常感谢 !!!!


可以实现,不过安全的做法是:

1.
sqlplus "/ as sysdba"
sql>shutdown immediate;

2. 通过OS命令mv或者cp将a.dbf移动到新目录,然后做下面步骤

3.
sql>startup mount;
sql>alter database rename file  'old_path/a.dbf' to 'new_path/a.dbf';
sql>alter database open;

论坛徽章:
0
5 [报告]
发表于 2007-05-30 10:09 |只看该作者

回复

非常感谢您,这样是要关闭数据库 ,不知道有没有在线移动的,就不关闭数据库直接移的??

论坛徽章:
0
6 [报告]
发表于 2007-05-30 10:33 |只看该作者
这个a.dbf是属于哪个表空间,假设属于test表空间

1. alter tablespace test begin backup;
2. 通过操作系统cp移动a.dbf到新目录
3. alter tablespace test rename datafile 'old_path/a.dbf' to 'new_path/a.dbf';
4. alter tablespace test end backup;
然后查看dba_data_files中的相关信息是否已经修改

建议先创建个测试表空间测试一下。

论坛徽章:
0
7 [报告]
发表于 2007-05-30 16:42 |只看该作者

回复

非常感谢numenhuang 说的很细致,非常感谢 ,祝福你!!!

论坛徽章:
0
8 [报告]
发表于 2007-05-30 16:49 |只看该作者

huifu \\\

在请教一下,numenhuang  
1. alter tablespace test begin backup;
2. 通过操作系统cp移动a.dbf到新目录
3. alter tablespace test rename datafile 'old_path/a.dbf' to 'new_path/a.dbf';
4. alter tablespace test end backup;
这个中间第1和第4部是必须执行的吗\??

论坛徽章:
0
9 [报告]
发表于 2007-05-30 16:52 |只看该作者
必须执行,否则容易出问题

论坛徽章:
0
10 [报告]
发表于 2007-05-30 17:11 |只看该作者

hufu

非常感谢,如果方便可以加我QQ:35510447 非常感谢 .
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP