لینوکس

بک آپ گیری MySQL در لینوکس

0

آموزش بک آپ گیری MySQL در لینوکس

چگونه از دیتابیس های MySQL اتوماتیک Backup بگیریم؟

بک آپ گیری MySQL یکی از کارهای غیرقابل اجتنابی است که باید به شکل دوره ای و روزانه جهت حفظ اطلاعات انجام شود.
بطور قطع انجام این کار به صورت دستی، کاری خسته کننده و دردسرساز خواهد بود.
در این مقاله، نحوه بک آپ گیری خودکار از دیتابیس های MySQL را برای کاربران لینوکسی بررسی می­کنیم.
“cron” یک ابزار زمان­بندی در سیستم­ عامل­ های لینوکس محور هست که در اکثر توزیع­ های لینوکسی بصورت پیشفرض نصب و به همراه سیستم­ عامل بصورت خودکار اجرا میشود. کار با این ابزار بسیار ساده است.
فایل کانفیگ عموما در مسیر /etc/crontab قرار دارد با یک ادیتور مانند vi فایل crontab را ویرایش کنید.

Crontab

در ترمینال خود دستور زیر را وارد کنید:

 # vi /etc/crontab

ظاهر اولیه این فایل به شکل زیر خواهد بود:

بک آپ گیری MySQL در لینوکس

با توجه به شکل بالا میتوان توضیحات مربوط به نحوه تعریف یک کار را فهمید.
بنابراین فرمت کلی هر کار به شکل زیر خواهد بود:

Minute hour day of month month days of week username command to be execute

بطور مثال اگر بخواهیم از دیتابیس MySQL بصورت روزانه در ساعت ۶:۱۵ صبح بک اپ تهیه کنیم می­توان در انتهای فایل crontab دستور زیر را وارد کرد:

# ۱۵ ۶ * * * root mysqldump –u root –pPassword mysql  > /etc/MySQLBackup/mysql_`date+\%m-\&d-\%Y-\%H:\%M:\%S`.sql

اولین قسمت در دستور بالا * * * ۶ ۱۵ هست که به ترتیب مشخص کننده روز از هفته، ماه، روز از ماه، ساعت و دقیقه است. بنابراین بکار بردن علامت “*” به معنای “هرچیزی” بیان کننده­ی هر روز از هفته،هر ماه و هر روز از ماه یا به عبارتی به شکل “روزانه” خواهد بود.

بک آپ گیری MySQL در لینوکس

ایجاد دسترسی root

دومین قسمت root به معنای اجرای این دستور با دسترسی root خواهد بود. اخرین قسمت ” mysqldump -u root –pPassword mysql > /etc/MySQLBackup/mysql_`date +\%m-\%d-\%Y-\%H:\%M:\%S`.sql ” است که از mysqldump، یک ابزار بک اپ گیری از دیتابیس MySQL استفاده شده که بصورت پیشفرض به همراه پکیج MySQL نصب خواهد شد. حال به بررسی قسمت نهایی می­پردازیم:

# mysqldump –u root –pPassword mysql  >  /etc/MySQLBackup/mysql_`date+\%m-\&d-\%Y-\%H:\%M:\%S`.sql

“-u root -pPassword” به معنای دسترسی به دیتابیس با نام کاربری “root” و پسورد “Password” خواهد بود. پس از آن نام دیتابیس و در صورت مشخص نمودن جدول خاصی از دیتابیس، نام جدول مورد نظر قرار می­گیرد. در مثال بالا “/etc/MySQLBackup/” محل قرارگیری فایل­های بک آپ را مشخص می­کند. به منظور مشخص نمودن تاریخ و زمان گرفتن بک آپ می­توان از فرمتی مانند ” date +\%m-\%d-\%Y-\%H:\%M:\%S ”  استفاده نمود. در صورت نیاز به فشرده سازی بک اپ مورد نظر می­توان از دستور زیر بهره برد:

# mysqldump –u root –pPassword mysql | gzip > /etc/MySQLBackup/mysql_`date+\%m-\&d-\%Y-\%H:\%M:\%S`.sql.gz

جهت اعمال تغییرات، می­بایست cron را با یکی از دستورات زیر بسته، به توزیع و ورژن لینوکس دوباره اجرا کرد:

# systemctl restart crond
# /etc/init.d/crond restart
# service crond restart

cron مختص به بک آپ گیری MySQL در لینوکس نیست و با استفاده از آن می­توان هر دستوری را زمان­بندی کرد.

نویسنده: سرکار خانم مهندس ثناعی

مشاهده همه مقالات سایت

ذخیره کردن پسورد در برنامه Winrar

مقاله قبلی

اشتراک یک یا چندین فایل اکسل بین چندین کاربر

مقاله بعدی

نظرات

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

پست های محبوب

ورود / ثبت نام