দূরবর্তী সার্ভারে কয়েকটি মাইএসকিউএল স্কিমার সামগ্রী স্বয়ংক্রিয়ভাবে ব্যাক আপ করতে আমি একটি শেল স্ক্রিপ্ট (বর্তমানে ব্যাশ ব্যবহার করে) লিখতে চাই। রিমোট সার্ভারটি কেবল এসএসএইচ অ্যাক্সেসের অনুমতি দেওয়ার জন্য লক হয়ে গেছে তাই mysqldump
বিভিন্ন স্কিমার বিরুদ্ধে চালানোর আগে আমাকে একটি এসএসএইচ টানেল তৈরি করতে হবে ।
আমি কোনও সমস্যা ছাড়াই একটি টানেল তৈরি করতে পারি, তবে আমি ডাটাবেস ডাম্প সম্পূর্ণ হওয়ার পরে এটি স্বয়ংক্রিয়ভাবে বন্ধ করতে সক্ষম হতে চাই।
বর্তমানে আমার স্ক্রিপ্ট এটি করছে:
/usr/bin/ssh -T -f -L 4444:127.0.0.1:3306 -l remoteuser 208.77.188.166 sleep 600
/usr/bin/mysqldump --compress -h 127.0.0.1 -P 4444 -u user -ppassword db1 | gzip > /root/backups/snapshot/db1.sql.gz
/usr/bin/mysqldump --compress -h 127.0.0.1 -P 4444 -u user -ppassword db2 | gzip > /root/backups/snapshot/db2.sql.gz
/usr/bin/mysqldump --compress -h 127.0.0.1 -P 4444 -u user -ppassword db3 | gzip > /root/backups/snapshot/db3.sql.gz
যেখানে সংযোগটি seconds০০ সেকেন্ডের জন্য উন্মুক্ত রাখা হয়েছে, স্পষ্টতই যদি প্রথম ডাম্পগুলির একটি তার চেয়ে বেশি সময় নেয় তবে অন্যান্য ডাম্পগুলি সম্পূর্ণ হওয়ার আগে সংযোগটি বন্ধ হয়ে যায়। আমি প্রতিটি স্কিমা ব্যাকআপের জন্য পৃথক ফাইল ধরে রাখতে চাই (তাই --databases
আপাতত মাইএসকিএলডাম্পটি এড়ানো হবে )।
কোন পরামর্শ?