MySQL डेटाबेस 'उपयोग' के बाद ठंड


17

मैंने हाल ही में एक बेवकूफ गलती की और अपने उबंटू स्थापना को भ्रष्ट कर दिया। इसे हल करने के लिए, मैंने एक लाइव सीडी के साथ बूट किया और डेटाबेस फ़ाइलों की नकल की। हालाँकि, अब मैंने पुराने इंस्टॉलेशन से फ़ोल्डर्स को नए में कॉपी कर लिया है, जब भी मैं "डेटाबेस_नाम का उपयोग करता हूं" तो यह केवल इस पर मुफ्त में टाइप करता है:

mysql> use my_database_name;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

और फिर टर्मिनल दिए बिना जमा करता है।

जवाबों:


28

लॉगिन के बाद पहले "उपयोग" कमांड पर, MySQL स्कैन डेटाबेस, टेबल और कॉलम का नाम ऑटो पूरा करने के लिए। यदि आपके पास कई डीबी, टेबल हैं तो इसमें कुछ समय लग सकता है।

उससे बचने के लिए, अपने ग्राहक को -A विकल्प (या --no-auto-rehash) के साथ लॉन्च करें

mysql -uroot -p -A

यदि आप इसे पूरी तरह से अक्षम करना चाहते हैं तो आप अपने my.cnf ([mysql] सेक्शन में) में disable_auto_rehash वैरिएबल भी जोड़ सकते हैं । इस परिवर्तन के लिए रिबूट की आवश्यकता नहीं है (यह एक क्लाइंट है, सर्वर नहीं, परिवर्तनशील है)।


"~ थोड़ी देर" ~ 2.5GiB डेटाबेस के लिए एक दिन से अधिक हो सकता है, या क्या यह अनुचित रूप से लंबा है?
ल्यूसिडब्रोट

2

मेरे मामले में, "रीडिंग टेबल की जानकारी" अनुचित समय ले रही थी। जब मैं भागा तो mysql -e 'show processlist'मुझे पता चला कि "फांसी" की प्रक्रिया "टेबल मेटाडेटा लॉक की प्रतीक्षा कर रही थी"। इससे कुछ प्रकार की समझ बनती है क्योंकि मेरे पास फॉर्म की एक लंबी-लंबी क्वेरी create table from select ...कहीं और चल रही है, इसलिए एक स्तर पर मैं यह समझ सकता था कि जब तक कि नई तालिका तैयार नहीं हो जाती, तब तक तालिकाओं के बारे में मेटाडेटा उपलब्ध नहीं होगा। (मुझे लगता है कि यह बेहतर होगा यदि ऑटो-पूर्ण स्कैन सिर्फ मेटा डेटा क्वेरी से किसी भी "अपूर्ण" तालिकाओं को छोड़ दे। यह संभव था।)


0

📌

जब आप पूरे डेटाबेस को दूसरे सिस्टम से कॉपी करते हैं:

/ Var / lib / mysql / *

आप chr -R mysql: mysql / var / lib / mysql / * को चुन सकते हैं और फिर से सेवा शुरू कर सकते हैं।

☝ इससे मेरी समस्या हल हो गई problem


2
DBA स्टैक एक्सचेंज में आपका स्वागत है! आपने इसे एक उद्धरण के रूप में स्वरूपित किया है; यदि आपको वास्तव में कहीं और से यह समाधान मिला है, तो आपको स्रोत प्रदान करना होगा । यदि नहीं, तो कृपया प्रारूपण हटा दें।
ग्लोरफाइंडेल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.