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

MySQL तालिका त्रुटि मौजूद नहीं है, लेकिन यह मौजूद है

यह मेरे साथ अभी हुआ और कुछ समय बाद मुझे एक ब्लॉग लेख पर उत्तर मिला, और मैं इसे यहाँ भी रखना चाहता था।

यदि आप MySQL डेटा निर्देशिका को /var/lib/mysql . से कॉपी करते हैं से /path/to/new/dir , लेकिन केवल डेटाबेस फ़ोल्डरों की प्रतिलिपि बनाएँ (अर्थात mysql , wpdb , ecommerce , आदि) और आपके पास innodb टेबल हैं, आपकी innodb टेबल 'शो टेबल' में दिखाई देंगी लेकिन उन पर प्रश्न (select और describe ) विफल हो जाएगा, त्रुटि के साथ Mysql error: table db.tableName doesn't exist . आप देखेंगे .frm db निर्देशिका में फ़ाइल करें, और आश्चर्य करें कि क्यों।

इनोडब टेबल के लिए, ib* . पर कॉपी करना महत्वपूर्ण है फ़ाइलें, जो मेरे मामले में ibdata1 . थीं , ib_logfile0 , और ib_logfile1 . एक बार जब मैंने स्थानांतरण कर दिया और सुनिश्चित कर लिया कि मैं उन्हें कॉपी करना चाहता हूं, तो सब कुछ उम्मीद के मुताबिक काम करता है।

यदि आपकी my.cnf फ़ाइल में "innodb_file_per_table" है तो .ibd फ़ाइल db निर्देशिका में मौजूद होगी लेकिन आपको अभी भी ib* फ़ाइलों की आवश्यकता होगी।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL में कॉलम के रूप में रो वैल्यू कैसे प्रदर्शित करें

  2. विभाजन करते समय विदेशी कुंजी को कैसे संभालें

  3. एक व्यक्ति को कई खाते बनाने से रोकने का सबसे अच्छा तरीका

  4. mySQL आगामी जन्मदिन चुनें

  5. Postgresql में MySQL के ORDER BY FIELD () का अनुकरण करना