PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

Postgres में अमान्य वस्तुओं को पहचानने और हटाने के लिए उपलब्ध विकल्प क्या हैं (उदा:दूषित अनुक्रमणिका)

यदि आप "अमान्य" (खराब तरीके से बनाए गए) इंडेक्स का पता लगाने की बात कर रहे हैं, तो जाहिर तौर पर पोस्टग्रेज इंडेक्स बनाने के प्रयास में "विफल" हो सकते हैं, और फिर क्वेरी प्लानर उनका उपयोग नहीं करेंगे, हालांकि वे आपके सिस्टम में मौजूद हैं। यह क्वेरी "विफल" अनुक्रमणिका का पता लगाएगी:

https://www.enterprisedb.com/blog/pgupgrad -बग-अमान्य-समवर्ती-निर्मित-अनुक्रमणिका

SELECT n.nspname, c.relname
FROM   pg_catalog.pg_class c, pg_catalog.pg_namespace n,
       pg_catalog.pg_index i
WHERE  (i.indisvalid = false OR i.indisready = false) AND
       i.indexrelid = c.oid AND c.relnamespace = n.oid AND
       n.nspname != 'pg_catalog' AND
       n.nspname != 'information_schema' AND
       n.nspname != 'pg_toast'

हालांकि मुझे लगता है कि टोस्ट टेबल इंडेक्स का पता लगाने से कोई दिक्कत नहीं होगी, इसलिए आप क्वेरी के उस हिस्से को हटा सकते हैं :)

संबंधित, मेरे लिए कभी-कभी केवल एक टेबल पर एक ताजा विश्लेषण चलाने से इंडेक्स अचानक उत्पादन में उपयोग होने लगते हैं (यानी भले ही इंडेक्स "अमान्य" न हों, वे विश्लेषण चलाने तक अप्रयुक्त हो सकते हैं)। अजीब।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgres SQL में `->>` और `->` में क्या अंतर है?

  2. क्या PostgreSQL क्वेरी में नामित स्थिरांक को परिभाषित करने का कोई तरीका है?

  3. PostgreSQL में डुप्लिकेट पंक्तियों का चयन करने के 4 तरीके

  4. कैसे 'कहां' खंड में कॉलम से बचने के लिए अगर पैरामीटर 'नहीं पास' है postgresql

  5. बर्मन क्लाउड - भाग 2:क्लाउड बैकअप