ব্যাশ স্ক্রিপ্ট ব্যবহার করে কীভাবে স্বয়ংক্রিয়ভাবে মাইএসকিউএল ডেটাবেস ব্যাকআপ করবেন

Byasa Skripta Byabahara Kare Kibhabe Sbayankriyabhabe Ma I Esaki U Ela Detabesa Byaka Apa Karabena



MySQL হল একটি জনপ্রিয় RDBMS যা অনায়াসে রিলেশনাল ডাটাবেস সংরক্ষণ ও পরিচালনা করতে সাহায্য করে। এটি MySQL ডাটাবেসের একটি যৌক্তিক ব্যাকআপ তৈরি করতে mysqldump ক্লায়েন্ট ইউটিলিটি প্রদান করে। MySQL একাধিক ভাষা এবং প্ল্যাটফর্ম সমর্থন করে, যার মানে আপনি লিনাক্সে ব্যাকআপের জন্য mysqldump ইউটিলিটি ব্যবহার করতে ব্যাশ স্ক্রিপ্টিং ব্যবহার করতে পারেন।

এই নির্দেশিকা প্রদর্শন করবে কিভাবে স্বয়ংক্রিয়ভাবে Bash স্ক্রিপ্ট ব্যবহার করে MySQL ডাটাবেসগুলিকে ধাপে ধাপে ব্যাক আপ করা যায়।

ব্যাশ স্ক্রিপ্ট ব্যবহার করে কিভাবে স্বয়ংক্রিয়ভাবে MySQL ডাটাবেস ব্যাকআপ করবেন?

MySQL ডাটাবেসের ব্যাকআপের জন্য একটি ব্যাশ স্ক্রিপ্ট তৈরি করুন। প্রথমত, টার্মিনাল খুলুন, একটি ডিরেক্টরি তৈরি করুন এবং এই কমান্ডগুলি টাইপ করে ডিরেক্টরিতে নেভিগেট করুন:







mkdir mysqlbackup

cd mysqlbackup/

আউটপুট প্রদর্শন করে যা আপনি সফলভাবে ডিরেক্টরিতে নেভিগেট করেছেন:





'নামের একটি ব্যাশ স্ক্রিপ্ট তৈরি করুন backup.sh 'যেকোন সম্পাদক ব্যবহার করে, এই পোস্টের জন্য ন্যানো সম্পাদক ব্যবহার করা হচ্ছে:





nano backup.sh

ব্যাশ স্ক্রিপ্ট তৈরি করবে:



MySQL শংসাপত্র এবং আপনি যে ডাটাবেসের ব্যাকআপ নিতে চান তার নাম প্রদান করুন:

DB_USER='ব্যবহারকারীর নাম'

DB_PASS='পাসওয়ার্ড'

DB_

ব্যাকআপ ডিরেক্টরি সেট করুন ' BACKUP_DIR ব্যাকআপ ফাইল যেখানে সংরক্ষণ করা উচিত সেই অবস্থান প্রদান করে:

BACKUP_DIR='/path/to/your/backup/directory'

ব্যাকআপ ফাইলের নামের জন্য তারিখ বিন্যাস সেট করুন:

DATE=$(তারিখ +'%Y-%m-%d_%H-%M-%S')

SQL ব্যাকআপ ফাইল তৈরি করতে MySQL ডাটাবেস শংসাপত্রের সাথে এই mysqldump কমান্ডটি ব্যবহার করুন:

mysqldump --user=$DB_USER --password=$DB_PASS $DB_NAME > $BACKUP_DIR/$DB_NAME-$DATE.sql

জিজিপ টুল দিয়ে এসকিউএল ব্যাকআপ ফাইল কম্প্রেস করতে, এই কমান্ডটি ব্যবহার করুন:

gzip $BACKUP_DIR/$DB_NAME-$DATE.sql

ডিস্কের স্থান সংরক্ষণ করতে, এই সময়ের জন্য, একটি সময়ের পরে পুরানো ব্যাকআপ ফাইলগুলি সরিয়ে ফেলুন ' 7 এই কমান্ড ব্যবহার করে দিন পুরানো ব্যাকআপ ফাইল মুছে ফেলা হবে:

$BACKUP_DIR -type f -name '*.gz' -mtime +7 -delete খুঁজুন

ফাইলটি সংরক্ষণ করুন এবং ন্যানো সম্পাদক থেকে প্রস্থান করুন ' CTRL + X 'কী:

এই কমান্ডটি চালিয়ে ব্যাশ স্ক্রিপ্টের অনুমতিগুলিকে এক্সিকিউটেবলে পরিবর্তন করুন:

chmod +x backup.sh

ত্রুটি-মুক্ত আউটপুট মানে কমান্ড কার্যকর করা সফল:

এই bash কমান্ড ব্যবহার করে স্ক্রিপ্ট চালান:

sudo bash backup.sh

উবুন্টুর পাসওয়ার্ড টাইপ করুন এবং ' ls ব্যাকআপ ফাইল তৈরি হয়েছে কি না তা যাচাই করার জন্য কমান্ড:

ব্যাশ স্ক্রিপ্ট ব্যবহার করে ব্যাকআপ ফাইল সফলভাবে তৈরি করা হয়েছে। এখন ব্যবহার করে ব্যাকআপ প্রক্রিয়া স্বয়ংক্রিয় করতে ' ক্রন 'চাকরি নির্ধারণকারী ইউটিলিটি। একটি নতুন ক্রন কাজ জমা দিতে ব্যবহার করুন ' -এইটা ক্রন্টাবের সাথে বিকল্প:

crontab -e

স্বয়ংক্রিয়ভাবে ব্যাশ স্ক্রিপ্ট চালানোর জন্য সময় সেট করুন। এই পোস্টের জন্য, ' 2 AM স্বয়ংক্রিয়ভাবে স্ক্রিপ্ট চালানোর জন্য ' নির্বাচন করা হয়েছে:

0 2 * * * /path/to/backup_mysql.sh

ফাইলটি সংরক্ষণ করুন এবং প্রস্থান করুন:

আপনি যদি প্রতিবার 'পরে আপনার ডাটাবেস ব্যাকআপ করতে চান তবে আসুন আরেকটি কমান্ড দেখি। 5 মিনিট এটি টাইপ করুন এবং ফাইলটি সংরক্ষণ করুন:

*/5 * * * * /path/to/backup_mysql.sh

ক্রন্টাব সফলভাবে কাজ তৈরি করতে কিছু সময় নেবে:

'এর পরে স্বয়ংক্রিয়ভাবে তৈরি হওয়া ব্যাকআপ ফাইলগুলির জন্য ডিরেক্টরি পরীক্ষা করুন 2 AM ', ' ব্যবহার করে ls 'আদেশ:

মাইএসকিউএল ডাটাবেস ব্যাকআপ ফাইলগুলি ব্যাশ স্ক্রিপ্ট এবং ক্রন ইউটিলিটি ব্যবহার করে স্বয়ংক্রিয়ভাবে তৈরি হয়।

উপসংহার

MySQL শংসাপত্র এবং আপনি যে ডাটাবেসের ব্যাক আপ করতে চান তার নাম এবং ফাইলের নামের বিন্যাস প্রদান করে একটি ব্যাশ স্ক্রিপ্ট তৈরি করুন। ব্যাকআপ SQL ফাইল তৈরি করার জন্য mysqldump কমান্ডটি ব্যবহার করুন, এটিকে সংকুচিত করতে gzip এবং স্ক্রিপ্টটি চালান। ব্যাকআপ প্রক্রিয়া স্বয়ংক্রিয় করতে crontab ব্যবহার করুন. এই পোস্টে আলোচনা করা হয়েছে কিভাবে স্বয়ংক্রিয়ভাবে Bash স্ক্রিপ্ট ব্যবহার করে একটি MySQL ডাটাবেস ব্যাক আপ করা যায়।