-
विश्लेषण तालिका सूचकांक का पुनर्निर्माण नहीं करती है, है ना?
मुझे नहीं पता लेकिन आजकल आपको
DBMS_STATS.GATHER_TABLE_STATSका उपयोग करना चाहिएANALYZE TABLE -
डायरेक्ट लोड का मतलब है कि डेटा पंक्ति दर पंक्ति नहीं डाला गया है बल्कि बल्क के रूप में, देखें डायरेक्ट पाथ लोड
-
अगर आपकी अनुक्रमणिका
UNUSABLEबन जाती है तो यह एक वैश्विक सूचकांक होना चाहिए। -
UPDATE GLOBAL INDEXESका उपयोग करें खंड, यानीalter table target_table drop partition target_eldest_partition UPDATE GLOBAL INDEXES;या स्थानीय अनुक्रमणिकाएँ बनाएँ। -
निर्भर करता है कि आपने कौन से कॉलम अनुक्रमित किए हैं। संपूर्ण तालिका के बजाय आप
DBMS_STATS.GATHER_INDEX_STATSभी चला सकते हैं .DBMS_STATS.GATHER_TABLE_STATS. के साथ आप केवल एकल विभाजन और यहां तक कि एकल स्तंभ भी निर्दिष्ट कर सकते हैं।
बीटीडब्ल्यू, कई सवालों के लिए मेरा जवाब वास्तव में होना चाहिए:"क्या आपने ओरेकल दस्तावेज से परामर्श लिया"? या "क्या आप गूगल को जानते हैं"? अपने स्क्रीनशॉट के अनुसार आप स्कीमा SYS . का उपयोग करते हैं और टेबलस्पेस SYSAUX आपके उपयोगकर्ता ऑब्जेक्ट्स के लिए। तुम्हें वह नहीं करना चाहिए। इस स्कीमा में अपना खुद का उपयोगकर्ता बनाएं और कोई भी ऑब्जेक्ट बनाएं।
सामान्य तौर पर तीन प्रकार के विभाजित सूचकांक होते हैं:
- वैश्विक सूचकांक:आपके पास एक बड़ी अनुक्रमणिका है जो पूरी तालिका में फैली हुई है। उदाहरण के लिए यह UNIQUE INDEXES के लिए अनिवार्य है यदि अनुक्रमित कॉलम विभाजन कुंजी का हिस्सा नहीं हैं। वास्तव में ऐसे सूचकांक का विभाजन नहीं होता है। (जैसा कि
ALL_INDEXES. में दिखाया गया है ) - LOCAL INDEX:इस इंडेक्स को उसी तरह विभाजित किया जाता है जैसे अंतर्निहित तालिका है। प्रत्येक तालिका विभाजन में एक अनुक्रमणिका विभाजन के अनुसार होता है।
- विभाजित अनुक्रमणिका:यह अनुक्रमणिका विभाजित है लेकिन भिन्न अंतर्निहित तालिका की तुलना में। मुझे लगता है कि एक गैर-विभाजित तालिका पर विभाजित अनुक्रमणिका बनाना भी संभव है। विभाजित सूचकांक केवल विशेष उपयोग के मामलों तक ही सीमित हैं। वास्तव में मैं कल्पना नहीं कर सकता कि इस तरह के सूचकांक का क्या अर्थ होगा।