免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
[精彩] 急,請(qǐng)教oralce 刪除記錄后空間釋放問(wèn)題
表a有1000完條記錄,使用TS_A 表空間,查看表a占用TS_A的容量為1G,而TS_A的容量為1.3G
現(xiàn)在刪除了700萬(wàn)條記錄,COMMIT后查看表a占用TS_A的容量仍然為1G,而且TS_A的容量還是1。3G,請(qǐng)問(wèn)有什么方法可以使這兩個(gè)空間釋放出來(lái)???謝謝!!!!!!!!!1
seraphim 回復(fù)于:2003-08-26 18:32:43
EXP,然后DROP原有的數(shù)據(jù)文件,再創(chuàng)建,然后重新IMP
westapple 回復(fù)于:2003-08-26 18:33:09
下面這段可以用來(lái)查某個(gè)用戶的空間使用情況,try it
The following is a simple SQL*Plus report on space utilization by tables in the current session schema. It displays total space allocated, total unused space, and the percentage of allocated space that is unused.
DECLARE
total_blocks  NUMBER;
total_bytes   NUMBER;
unused_blocks NUMBER;
unused_bytes  NUMBER;
last_extent_file  NUMBER;
last_extent_block NUMBER;
last_block    NUMBER;
grand_total_blocks NUMBER := 0;
grand_total_unused NUMBER := 0;
BEGIN
FOR user_tables_rec IN
(SELECT table_name
FROM user_tables)
LOOP
DBMS_SPACE.UNUSED_SPACE
(segment_owner =>; USER
,segment_name  =>; user_tables_rec.table_name
,segment_type  =>; ‘TABLE‘
,total_blocks  =>; total_blocks
,total_bytes   =>; total_bytes
,unused_blocks =>; unused_blocks
,unused_bytes  =>; unused_bytes
,last_used_extent_file_id =>; last_extent_file
,last_used_extent_block_id =>; last_extent_block
,last_used_block  =>; last_block
);
grand_total_blocks := grand_total_blocks + total_blocks;
grand_total_unused := grand_total_unused + unused_blocks;
END LOOP;
DBMS_OUTPUT.PUT_LINE(‘Space utilization (TABLES) ‘);
DBMS_OUTPUT.PUT_LINE(‘total blocks: ‘||
TO_CHAR(grand_total_blocks) );
DBMS_OUTPUT.PUT_LINE(‘unused blocks: ‘||
TO_CHAR(grand_total_unused) );
DBMS_OUTPUT.PUT_LINE(‘pct unused: ‘||
TO_CHAR(ROUND((grand_total_unused/grand_total_blocks)*100) ) );
END;
/
This is a sample of the report output:
Space utilization (TABLES)
total blocks: 1237
unused blocks: 613
pct unused: 50
注意,此代碼需要根據(jù)實(shí)際情況修改。
下面語(yǔ)句可以用來(lái)釋放未釋放的空間:
ALTER [ TABLE | INDEX | CLUSTER ] segment_name DEALLOCATE UNUSED;
至于表空間的大小是在創(chuàng)建表空間時(shí)根據(jù)數(shù)據(jù)文件的大小確定的,其大小不會(huì)因?yàn)楸砜臻g內(nèi)數(shù)據(jù)的多少而改變。
表空間的大小=屬于該表空間的的數(shù)據(jù)文件的空間占用之和。
westapple 回復(fù)于:2003-08-26 18:37:25
seraphim ,你也來(lái)了。      :D
seraphim 回復(fù)于:2003-08-26 19:12:23
引用:原帖由 "westapple"]seraphim ,你也來(lái)了。      :D
發(fā)表:
:D  :D
沒(méi)事兒上來(lái)看看
lojn 回復(fù)于:2003-08-26 20:02:08
用 alter table move ...
sam2 回復(fù)于:2003-08-27 10:13:28
不行啊,各位大蝦,
表a存儲(chǔ)運(yùn)營(yíng)數(shù)據(jù),不能DROP,
我也試了 ALTER a DEALLOCATE UNUSED,然后查看,兩個(gè)空間都還是沒(méi)變啊,大哥,請(qǐng)幫幫忙,急啊!!!!!!!!!!!!!!!!!!
0_0 回復(fù)于:2003-08-27 10:30:25
1.Alter table table_name move tablespace tbsname
2.Exp后刪除表再I(mǎi)mp
Taylorgao 回復(fù)于:2003-08-27 12:32:30
create table t_tmp as select * from a;
truncate table a;
insert into a select * from t_tmp
txfy 回復(fù)于:2003-08-27 13:15:22
那種方法管用啊,我也想知道結(jié)果,這么多說(shuō)法不知道那個(gè)是精彩回復(fù)!呵呵
sanow 回復(fù)于:2003-08-27 14:00:36
建立新的表空間new_tablespace
.Alter table table_name move tablespace new_tablespace
這樣就已經(jīng)整理了碎片。不必在再什么EXP,IMP了。
rollingpig 回復(fù)于:2003-08-27 15:34:48
引用:原帖由 "txfy"]那種方法管用啊,我也想知道結(jié)果,這么多說(shuō)法不知道那個(gè)是精彩回復(fù)!呵呵
發(fā)表:
呵呵
alter table …… move tablespace
sam2 回復(fù)于:2003-08-27 15:40:47
首先謝謝各位大蝦,經(jīng)過(guò)測(cè)試,我發(fā)現(xiàn)在刪除數(shù)據(jù)后,表占用表空間是不變的,但當(dāng)再insert 相同條數(shù)的數(shù)據(jù)(被刪除的數(shù)據(jù)),再查看,表占用表空間還
是和INSERT前那么多,但再I(mǎi)NSERT時(shí),空間就會(huì)增加了,該怎么解釋呢?
是不是其實(shí)刪除數(shù)據(jù)后空間是發(fā)生變化了,或打上了標(biāo)記位,當(dāng)下一次INSERT時(shí)就覆蓋該標(biāo)志位的數(shù)據(jù)段,那么就相當(dāng)于釋放了被刪除的數(shù)據(jù)  ??
sam2 回復(fù)于:2003-08-27 15:43:45
alter table …… move tablespace  是可以看到釋放了空間,但這樣把表空間改來(lái)改去,萬(wàn)一ALTER的過(guò)程發(fā)生錯(cuò)誤,那就很恐怖了,所以不敢試
psb_天涯浪子 回復(fù)于:2003-08-27 15:47:58
好像刪除一個(gè)表的數(shù)據(jù)后,原存放該數(shù)據(jù)的空間不提供給同一表空間內(nèi)的其他表使用,但此表在插入數(shù)據(jù)的時(shí)候也仍然可以使用釋放出來(lái)的空間。
引用:原帖由 "sam2" 發(fā)表:
首先謝謝各位大蝦,經(jīng)過(guò)測(cè)試,我發(fā)現(xiàn)在刪除數(shù)據(jù)后,表占用表空間是不變的,但當(dāng)再insert 相同條數(shù)的數(shù)據(jù)(被刪除的數(shù)據(jù)),再查看,表占用表空間還
是和INSERT前那么多,但再I(mǎi)NSERT時(shí),空間就會(huì)增加了,該怎么解釋呢..........
rollingpig 回復(fù)于:2003-08-27 16:24:32
呵呵
this is the question about HWM(high water mark)
only truncate/drop/move can reduce it!!
精華區(qū)里有這一方面的文章,大家可以看看??!
pigydree 回復(fù)于:2004-07-06 09:43:35
用delete刪除數(shù)據(jù)
--先將a表備份。
rename  a  to  a_bak;
-- 下面建表的這句話,主要為了達(dá)到一個(gè)目的,就是創(chuàng)建一個(gè)跟a表完全相同的孔表,因此不一定要這么寫(xiě)。
create table   a    as select * from     a_bak    where 1=2;
--將備份表的數(shù)據(jù)插回新創(chuàng)建的表。
insert  into   a  select * from a_bak;
--刪除備份表。
drop table a_bak;
:em02:  :em02:
原文鏈接:http://bbs.chinaunix.net/viewthread.php?tid=147774
轉(zhuǎn)載請(qǐng)注明作者名及原文出處
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Oracle 高水位線(HWM) 及性能優(yōu)化 - wanglinchuan的專(zhuān)欄 - CS...
本地表空間管理與字典表空間管理深入研究
ORACLE 數(shù)據(jù)庫(kù)管理員的職責(zé)
oracle創(chuàng)建表空間和用戶授權(quán) - - JavaEye技術(shù)網(wǎng)站
DBA常用腳本
如何在多租戶環(huán)境下使用數(shù)據(jù)庫(kù)的閃回功能
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服