2011-11-29 25 views
7

मेरे पास वर्तमान में एक स्क्रिप्ट चल रही है और ऐसा नहीं लगता कि इसे चलाने में इतना समय लगेगा, स्क्रिप्ट एक अस्थायी तालिका को संशोधित कर रही है।MySQL अस्थायी तालिका देखें - सत्र में नहीं

मुझे पता है कि अस्थायी तालिकाओं केवल वर्तमान सत्र के लिए मौजूद हैं, लेकिन डेटा वे सत्र के बाहर से पकड़ को देखने के लिए वहाँ वैसे भी है?

कारण है कि मुझे पता है कि कब तक मेरी स्क्रिप्ट के लिए चालू रखने के लिए, अगर मैं अस्थायी डेटा देख सकते हैं तो मैं यह पता लगाने के लिए सक्षम हो जाएगा जा रहा है चाहता हूँ।

+2

किसी एक पैच लिखा है करने के लिए "अस्थायी टेबल दिखाने": http://venublog.com/2010/02/03/show-temporary- टेबल/ इसे एक लोकप्रिय MySQL कांटा, परकोना एक्सट्रैडबी में शामिल किया गया है। – ggiroux

+0

@ggiroux, WebScaleSQL के बारे में क्या? – Pacerier

+0

MySQL 5.7 में एक नया INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO जोड़ा गया है: http://dev.mysql.com/doc/refman/5.7/en/innodb-information-schema-temp-table-info.html – ggiroux

उत्तर

8

ऐसा करने का कोई आसान तरीका नहीं है मुझे डर है।

अस्थायी तालिकाओं अपने mysqld के नामित अस्थायी निर्देशिका (आमतौर पर/tmp) में संग्रहीत किया जाएगा और आप की तरह कुछ तालिकाओं का एक समूह दिखाई देगा:

-rw-rw---- 1 mysql mysql  8724 Nov 29 18:09 #sqldba_5fa70c_12f1.frm 
-rw-rw---- 1 mysql mysql 188408 Nov 29 18:09 #sqldba_5fa70c_12f1.MYD 
-rw-rw---- 1 mysql mysql  1024 Nov 29 18:09 #sqldba_5fa70c_12f1.MYI 

को परिभाषित करने MyISAM तालिकाओं के एक सामान्य सेट है कि (क्रम में ऊपर) संरचना, डेटा और सूचकांक।

यह बेहद हैकी है लेकिन मुझे संदेह है कि आप इन तालिकाओं को अपनी test स्कीमा कहने के लिए प्रतिलिपि बना सकते हैं, तालिका पर एक मरम्मत चला सकते हैं और फिर इसकी सामग्री देख सकते हैं।

आप अस्थायी तालिका के आकार से प्रक्रिया का आकलन कर सकते हैं तो कि अच्छी तरह से विश्लेषण करने पर क्या हो रहा है का एक सरल तरीका हो सकता है।

+0

धन्यवाद। फाइलसाइज बहुत उपयोगी था, मैंने इसे एक समान तालिका के आकार से तुलना की। – Drahcir

1

संभव नहीं है, तो आप (हालांकि),
लॉग मील का पत्थर (संदेश, पूरा होने की%, संख्या पंक्तियां संसाधित)
एक अस्थायी फ़ाइल में , और tail -f log_file उपयोग कर सकते हैं

संबंधित मुद्दे