2010-11-12 14 views
6

क्या PostgreSQL 8.4 में किसी मौजूदा तालिका के fillfactor को बदलना संभव है?मौजूदा तालिका का fillfactor बदलना

या क्या मुझे नए fillfactor के साथ एक तालिका की प्रतिलिपि बनाना है - जो विदेशी कुंजी समस्याओं के कारण सबसे अच्छा तरीका नहीं है?

उत्तर

11

हां, यह संभव है। लेकिन आपको टेबल को फिर से लिखने के लिए बाद में इस तालिका को पूर्ण या क्लस्टर करना होगा।

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

ध्यान दें कि आप शायद वैक्यूम पूर्ण के बजाय CLUSTER करना चाहते हैं। Http://wiki.postgresql.org/wiki/VACUUM_FULL –

+5

@JoeVanDyk देखें: ध्यान दें कि चूंकि पेज 9.0 'वैक्यूम पूर्ण' ठीक है - जैसा कि अब पोस्टग्रेज़ विकी में प्रलेखित है। –

+0

क्या नया fillfactor VACUUM'ing के साथ नए tuples/रिकॉर्ड्स के लिए काम करता है? (मैं पुराने रिकॉर्ड के साथ अप्रभावित रह सकता हूं) –

संबंधित मुद्दे