2010-11-12 11 views
6

PostgreSQL 8.4'te mevcut bir tablonun doluluk oranını değiştirmek mümkün müdür? Ya da yeni doldurucu ile bir tablonun kopyasını oluşturmak zorunda mıyım - yabancı anahtar problemleri yüzünden en iyi yaklaşım bu değil midir?Mevcut tablonun değişen dolgusu

cevap

11

Evet, bu mümkün. Fakat tabloyu yeniden yazmak için VACUUM FULL veya CLUSTER bu tablodan sonra gerekir.

ALTER TABLE foo SET (fillfactor = 50); 
VACUUM FULL foo; 
+1

Muhtemelen VAKUM DOLU yerine CLUSTER yapmak isteyebileceğinizi unutmayın. Bkz. Http://wiki.postgresql.org/wiki/VACUUM_FULL –

+5

@JoeVanDyk: Not 9.0'dan beri "VAKUM FULL" iyi - Postgres Wiki'de belgelendiği gibi şimdi. –

+0

Yeni fillfactor, VACUUM'ing ile yeni tuple/kayıt için çalışıyor mu? (Eski kayıtların etkilenmeden yaşayabiliyorum) –