सवाल PostgreSQL अस्थायी फ़ाइल स्थान ले जाएँ


मैं PostgreSQL अस्थायी फ़ाइल / कैश स्थान कैसे स्थानांतरित करूं? मेरे पास मेरे सिस्टम विभाजन पर सीमित स्थान है, इसलिए यह मुझे इस तरह की त्रुटियों को फेंकता रहता है:

ERROR: could not extend file "base/16384/16563.1": wrote only 4096 of 8192 bytes at block 207279
SQL state: 53100
Hint: Check free disk space.

1
2017-12-02 23:40


मूल




जवाब:


PostgreSQL को अस्थायी फ़ाइलों को कहां नियंत्रित करने के लिए, आप पहले एक या अधिक बनाते हैं टेबलस्पेस अस्थायी फ़ाइलों को पकड़ने के लिए, फिर आप सेट करते हैं temp_tablespaces विन्यास चर उन टेबलस्पेस निर्दिष्ट करने के लिए।

पुनरारंभ करने के बाद टेबलस्पेस निर्देशिका मौजूद है यह महत्वपूर्ण है। Tempfiles के भीतर से गायब होने के लिए यह ठीक है, लेकिन लक्ष्य निर्देशिका जरूर मौजूद है या PostgreSQL शुरू करने में विफल हो जाएगा।

आप एक स्पष्ट भी दे सकते हैं tablespace एक पैरामीटर CREATE TEMPORARY TABLE ... इत्यादि, यदि आप डेटाबेस सर्वर की तुलना में वर्कलोड के बारे में अधिक जानते हैं, तो आपको यह नियंत्रित करने की इजाजत मिलती है कि चीजें I / O वितरित करने के लिए कहां जाती हैं।


2
2017-12-03 07:14