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

MySQL डेटाबेस आयात करता है लेकिन विशिष्ट तालिका को अनदेखा करता है

RandomSeed द्वारा स्वीकृत उत्तर में लंबा समय लग सकता है! तालिका को आयात करना (बस इसे बाद में छोड़ने के लिए) आकार के आधार पर बहुत बेकार हो सकता है।

. का उपयोग करके बनाई गई फ़ाइल के लिए
mysqldump -u user -ppasswd --opt --routines DBname > DBdump.sql

मुझे वर्तमान में 7GB के बारे में एक फ़ाइल मिलती है, जिसमें से 6GB एक लॉग टेबल के लिए डेटा है जिसे मुझे वहां रहने की 'आवश्यकता' नहीं है; इस फ़ाइल को पुनः लोड करने में कुछ घंटे लगते हैं। यदि मुझे पुनः लोड करने की आवश्यकता है (विकास उद्देश्यों के लिए, या यदि कभी लाइव पुनर्प्राप्ति के लिए आवश्यक हो) तो मैं फ़ाइल को इस प्रकार स्किम करता हूं:

sed '/INSERT INTO `TABLE_TO_SKIP`/d' DBdump.sql > reduced.sql

और इसके साथ पुनः लोड करें:

mysql -u user -ppasswd DBname < reduced.sql

यह मुझे एक पूर्ण डेटाबेस देता है, जिसमें "अवांछित" तालिका बनाई गई है लेकिन खाली है। यदि आप वास्तव में तालिकाओं को बिल्कुल भी नहीं चाहते हैं, तो लोड समाप्त होने के बाद बस खाली तालिकाओं को छोड़ दें।

एकाधिक तालिकाओं के लिए आप ऐसा कुछ कर सकते हैं:

sed '/INSERT INTO `TABLE1_TO_SKIP`/d' DBdump.sql | \
sed '/INSERT INTO `TABLE2_TO_SKIP`/d' | \
sed '/INSERT INTO `TABLE3_TO_SKIP`/d' > reduced.sql

एक 'गोचा' है - अपने डंप में प्रक्रियाओं के लिए देखें जिसमें "INSERT INTO TABLE_TO_SKIP" हो सकता है।



  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 में InnoDB टेबल मौजूद हैं लेकिन कहते हैं कि डेटाबेस को नए सर्वर पर कॉपी करने के बाद वे मौजूद नहीं हैं

  2. चेतावनी:mysqli_connect ():(HY000/1045):उपयोगकर्ता 'रूट' @ 'लोकलहोस्ट' के लिए प्रवेश निषेध (पासवर्ड का उपयोग करके:नहीं)

  3. नेटिव टेबल 'performance_schema'।'???' गलत संरचना है

  4. mysqli - क्या मुझे वास्तव में $result->close(); और $mysqli-> करीब ();?

  5. रेल में टेबल कॉलम में हैश वैल्यू कैसे रखें?