收缩数据库文件(如果不压缩,数据库的文件不会减小
企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
--选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
也可以用SQL语句来完成
--收缩数据库
DBCC SHRINKDATABASE(库名)
--收缩指定数据文件,1是文件号,可以通过这个语句查询到:select from sysfiles
DBCC SHRINKFILE(1)
首先不知道你的数据库在什么系统下:
window:
找到数据文件存放的位置,比如D:\存放的是oracle的数据文件,如果表空间采用的是自动管理方式,考虑将一些数据文件移到其他盘符下,比如:e:\等
linux/unix
du -sk 查看oracle数据库相关文件夹下每个文件的空间使用情况,删除垃圾文件
如果没有垃圾文件,尝试整理表空间,可以释放一些空间,只是暂时解决文件
增加裸设备
如果使用asm的方式管理的,考虑将asm里增加pv。
以上,希望能帮助你!
你把client删了,就糟糕了 为了腾出些磁盘空间,只能按sap的要求做archive,然后做reorg重组 现在client不在了,就会做不了archive 一定要删,就只有进表去删了,这样会多很多事情, 因为archive是sap标准的,掌握的人多相对简单 搞表,掌握的人相对少,而且表太多,也容易遗漏
一、drop表
执行drop table xx 语句drop后的表被放在回收站(user_recyclebin)里,而不是直接删除掉。
不放入回收站,直接删除则是:drop table xx purge;
二、回收站
通过查询回收站user_recyclebin获取被删除的表信息,然后使用语句
flashback table <user_recyclebinobject_name or user_recyclebinoriginal_name> to before drop [rename to <new_table_name>];
将回收站里的表恢复为原名称或指定新名称,表中数据不会丢失。
若要彻底删除表,则使用语句:drop table <table_name> purge;
清除回收站里的信息
清除指定表:purge table <table_name>;
清除当前用户的回收站:purge recyclebin;
清除所有用户的回收站:purge dba_recyclebin;
三、清除表中的数据
truncate *** 作同没有where条件的delete *** 作十分相似,只是把表里的信息全部删除,但是表依然存在。
例如:truncate table XX
Truncate不支持回滚,并且不能truncate一个带有外键的表,如果要删除首先要取消外键,然后再删除。
truncate table 后,有可能表空间仍没有释放,可以使用如下语句:
alter table 表名称 deallocate UNUSED KEEP 0;
注意如果不加KEEP 0的话,表空间是不会释放的。例如:
alter table F_MINUTE_TD_NET_FHO_B7 deallocate UNUSED KEEP 0;
或者:
TRUNCATE TABLE (schema)table_name DROP(REUSE) STORAGE才能释放表空间。
例如: truncate table test1 DROP STORAGE;
以上就是关于sql server2000如何释放可用空间全部的内容,包括:sql server2000如何释放可用空间、oracle数据库放的硬盘空间满了..怎么才能释放出点垃圾文件,.比如日志什么的、删除client后 怎样释放数据库空间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)