আমার কাছে সিটিএর কয়েকটি টেবিলের সাথে 9.1 ডাটাবেসের স্থানীয় ইনস্টলেশন রয়েছে। 300 মিও রেকর্ডস এবং ডাটাবেসটি প্রায় 20 জিবি বেড়েছে এরপরে আমি এ delete fromথেকে সমস্ত রেকর্ড মুছতে কমান্ড জারি করেছি (আমার ব্যবহার করা উচিত ছিল truncate, তবে আমি এটি জানতাম না)। সুতরাং ডিস্কের স্থান পুনরায় দাবি করতে আমি আমার ডিবিতে পূর্ণ শূন্যতা তৈরি করেছিলাম, তবে এটি কোনও সাহায্য করে না। আমার সমস্যাটি এটিকে দেখতে অভিন্ন দেখায় , তবে কোনও সমাধান সরবরাহ করা হয়নি। আমি ইতিমধ্যে এই থ্রেড এবং "ডিস্কের স্থান পুনরুদ্ধার" সংক্রান্ত ডকুমেন্টেশনগুলি যাচাই করেছি , তবে এখনও কোনও সমাধান খুঁজে পাচ্ছি না। আমি সমস্ত টেবিলের আকার পেতে এই কোডটি ব্যবহার করি
SELECT nspname || '.' || relname AS "relation",
pg_size_pretty(pg_total_relation_size(C.oid)) AS "total_size"
FROM pg_class C
LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace)
WHERE nspname NOT IN ('pg_catalog', 'information_schema')
AND C.relkind <> 'i'
AND nspname !~ '^pg_toast'
ORDER BY pg_total_relation_size(C.oid) DESC
LIMIT 15;
মোট 1 জিবি কম, যদিও
SELECT pg_database.datname, pg_size_pretty(pg_database_size(pg_database.datname)) AS size FROM pg_database
এখনও প্রায় 20 জিবি দেখায়। কোন পরামর্শ অনেক প্রশংসা।
pg_catalogএবং সারণীসমূহinformation_schema। সুতরাং ধারাটিতে থাকা এই বিধিনিষেধগুলি সরিয়ে এটির মধ্যে কিছু কিনা তা দেখার চেষ্টা করুনWHERE। দয়া করে আপনার সঠিক পোস্টগ্রিজ এসকিউএল সংস্করণ (SELECT version()) এবং আপনি "সম্পূর্ণ ডাটাবেস ভ্যাকুয়াম" করতে হুবহু কী করছেন, অর্থাত্ হুবহু কমান্ডটি প্রদর্শন করুন। যদি সম্ভব হয় তবে চালানVACUUM FULL VERBOSE;(কোনও যুক্তি নেই) এবং আউটপুট কোথাও পেস্ট করুন তবে এটির সাথে এখানে লিঙ্ক করুন।