स्कॉट मार्लो और वाओ सुन की टिप्पणियों ने काम किया:
ऑन (लिनक्स) सर्वर एक टर्मिनल खोलता है
उस स्थान पर नेविगेट करें जहां एक नया नामस्थान होना चाहिए
एक निर्देशिका बनाएं:mkdir dirname
पोस्टग्रेज़ को स्वामित्व दें:chown postgres:postgres dirname
तालिका बनाएं:CREATE TABLESPACE new_tbl_space LOCATION '/path/dirname'
टेबल को टेबल स्पेस में रखें:alter table tbl set tablespace '/path/dirname'
वह करें जो इतना अधिक डिस्क स्थान ले रहा था:ALTER TABLE tbl ALTER COLUMN id TYPE BIGINT;
टेबलस्पेस को वापस बदलें:alter table tbl set tablespace pg_default
टेबलस्पेस हटाएं:मैंने pgadmin4 में Tablespaces
. में ऐसा किया था नोड/ऑब्जेक्ट
(वह स्मृति से था। अगर मुझे कुछ याद आया तो मुझे बताएं।)
संपादित करें:इसका पूरी तालिका को फिर से लिखने का दुष्प्रभाव है जैसे पूर्ण वैक्यूम किसी भी मृत डिस्क स्थान को मुक्त करता है।