2012-11-27 15 views
27

क्या एसएसएच कनेक्शन के माध्यम से रिमोट होस्ट से डेटाबेस को डंप करना संभव है और मेरे स्थानीय कंप्यूटर पर बैकअप फ़ाइल है।रिमोट होस्ट से mysqldump

यदि ऐसा है तो यह कैसे प्राप्त किया जा सकता है?

मुझे लगता है कि यह एसएसएच से डंप या इसके विपरीत पाइपिंग आउटपुट का कुछ संयोजन होगा लेकिन इसे समझ नहीं सकता है।

+0

मैं इसी तरह जवाब यहाँ का जवाब दिया है: http://stackoverflow.com/questions/6564882/automate-mysqldump-to-local-computer-windows/13584425#13584425 –

उत्तर

55

यह डंप होता है, सेक और अपने स्थानीय फ़ाइल

ssh -l user remoteserver "mysqldump -mysqldumpoptions database | gzip -3 -c" > /localpath/localfile.sql.gz 
3

ssh -f [email protected] -L 3306:server.com:3306 -N

तो

:

mysqldump -hlocalhost > backup.sql

आप भी यह मानते हुए कि mysql स्थानीय स्तर पर चल रहा है नहीं है। यदि आप करते हैं तो आप पोर्ट को किसी और चीज़ में समायोजित कर सकते हैं।

+0

आपको एक उदाहरण –

+1

प्रदान कर सकता हूँ मैं एक में इस की जरूरत है एकल आदेश हालांकि, मैंने सोचा कि क्यों पाइप का संयोजन होगा –

+0

क्या आप समझा सकते हैं कि आपको इसे एक कमांड के रूप में क्यों चाहिए? –

10

@ MichelFeldheim के समाधान से शुरू में ssh पर स्ट्रीम, मैं का उपयोग करेंगे:

$ ssh [email protected] "mysqldump -u user -p database | gzip -c" | gunzip > db.sql 
0

मैं एक script बनाया है इसे बनाने के लिए Michel Feldheim द्वारा दिए गए उत्तर का उपयोग कर mysqldump आदेशों को स्वचालित बिंदु के रूप में mysqldump आदेशों को स्वचालित करना आसान है:

mysqldump-remote

स्क्रिप्ट आप के साथ या बिना SSH और वैकल्पिक रूप से वातावरण चर युक्त एक .env फ़ाइल का उपयोग कर एक दूरस्थ होस्ट से एक डेटाबेस डंप लाने देती है।

मैं स्वचालित डेटाबेस बैकअप के लिए स्क्रिप्ट का उपयोग करने की योजना बना रहा हूं। create issues/contribute पर निःशुल्क महसूस करें - उम्मीद है कि इससे दूसरों की भी मदद मिलती है!

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

  • कोई संबंधित समस्या नहीं^_^