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

त्रुटि:तालिका xxx के लिए तालिका स्थान मौजूद है। कृपया आयात करने से पहले टेबल स्पेस को त्यागें

यहां थोड़ी देर हो चुकी है लेकिन आम तौर पर मैंने यह समस्या तब देखी है जब आपको 'innodb_file_per_table' मोड में चलते समय 'टेबलस्पेस पूर्ण' त्रुटि मिलती है। बहुत अधिक विवरण में जाए बिना (अधिक यहां ए> ), डेटाबेस सर्वर का टेबलस्पेस innodb_data_file_path सेटिंग द्वारा परिभाषित किया गया है और डिफ़ॉल्ट रूप से छोटा है। यहां तक ​​​​कि बड़ा किया गया, 'टेबलस्पेस पूर्ण' अभी भी बड़े प्रश्नों के साथ हो सकता है और इस तरह (बहुत सारे गैर-टेबल 'सामान' वहां संग्रहीत हैं, लॉग, कैश, आदि पूर्ववत करें...)।

वैसे भी, मैंने पाया कि यदि आप ओएस निर्देशिका में देखते हैं जहां फाइलें-प्रति-तालिका संग्रहीत हैं,/var/lib/mysql डिफ़ॉल्ट रूप से ओएसएक्स पर,/usr/स्थानीय/var/mysql होमब्रू आईआईआरसी के साथ, आप पाएंगे एक अनाथ tablename.ibd फ़ाइल बिना सामान्य साथी tablename.frm फ़ाइल के। यदि आप उस .ibd फ़ाइल को किसी सुरक्षित अस्थायी स्थान पर ले जाते हैं (सिर्फ सुरक्षित रहने के लिए) तो इससे समस्या ठीक हो जाएगी।

$ ls /var/lib/mysql

table1.frm
table1.idb
table2.frm
table2.idb
table3.idb <- problem table, no table3.frm
table4.frm
table4.idb

$ mkdir /tmp/mysql_orphans
$ mv /var/lib/mysql/table3.ibd /tmp/mysql_orphans/

एक चेतावनी हालांकि, सुनिश्चित करें कि मूल रूप से समस्या का कारण क्या है, उदा। लंबे समय से चल रही क्वेरी, लॉक टेबल, आदि... को साफ़ कर दिया गया है। अन्यथा जब आप दूसरी बार कोशिश करते हैं तो आप एक और अनाथ .ibd फ़ाइल के साथ समाप्त हो जाते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. में गैर - वस्तु की संपत्ति प्राप्त करने की कोशिश

  2. MySQL को लिखते समय टेक्स्ट एरिया से लाइन ब्रेक सुरक्षित रखें

  3. सप्ताह () उदाहरण – MySQL

  4. MySQL में स्ट्रिंग्स को जोड़ने के लिए GROUP BY का उपयोग कैसे करें?

  5. MySQL में SQL स्क्रिप्ट कैसे चलाएं?