السلام عليكم ورحمة الله وبركاته
أعتقد بأن الغالبيه يهتم لأخذ نسخه احتياطيه بشكل دوري لقاعدة بيانات منتداه حتى لا يفقد المواضيع والمشاركات التي وضعت في منتداه وأيضا لا يفقد أسماء الأعضاء الجدد .
لذلك لك هذه الطريقه التي تجعلك في راحه من أخذ الباك أب للقاعده حسب المده التي تحددها أنت .
1- أدخل على حساب موقعك بأي برنامج FTP على سبيل المثال CuteFTP .
2- تأكد أنك خارج المجلد public_html .
3- قم بإنشاء مجلد جديد بإسم forumbackup ( بإمكانك إختيار أي إسم ) .
4- الأن قم بالدخول على لوحة التحكم الخاصه بموقعك Cpanel .
5- أدخل على Cron Jobs حسب الشكل التالي :
6- أدخل على Advanced .
7- وهذه أهم خطوه حيث من خلالها تحدد :
* المده اللازمه لتنفيذ الأمر .
* الأمر المراد تنفيذه .
أنظر الشكل التالي:
سوف أوضح الجزئين المهمين في هذه الشاشه .
الجزء الأول وهو المده اللازمه لتنفيذ الأمر .
Minute : وهو الدقيقه التي سينفذ عندها الأمر والمعروف أن كل ساعه 60 دقيقه لذلك البيانات التي تدخل هي من صفر إلى 59 وعلامة النجمه ( * ) ومعناها كل .
Hour : وهو الساعه التي سينفذ عندها الأمر وطبعا لدينا في اليوم الواحد 24 ساعه لذلك الأرقام التي تدخل هي من صفر الى 23 وعلامة النجمه ( * ) ومعناها كل .
Day : وهو اليوم الذي سينفذ عنده الأمر وطبعاً الشهر 31 يوماً أو 30 يوماً لذلك الأرقام التي تدخل هي من 1 إلى 31 وعلامة النجمه ( * ) ومعناها كل .
Month : وهو الشهر الذي سينفذ عنده الأمر وطبعاً السنه 12 شهر لذلك البيانات التي تدخل هي من 1 الى 12 وعلامة النجمه ( * ) ومعناها كل .
طبعاً لكي تفهم استخدام هذه الخانات يجب أن تبدأ بالأكبر .
والأكبر هنا هو الشهر بعده اليوم وبعده الساعه وبعده الدقيقه .
بقية خانه أخيره وهي :
Weekday : وهو رقم اليوم بالأسبوع الذي سينفذ عنده الأمر والمعروف أن كل أسبوع 7 أيام وهي كالتالي :
الأحد رقمه صفر
الإثنين رقمه 1
الثلاثاء رقمه 2
الأربعاء رقمه 3
الخميس رقمه 4
الجمعه رقمه 5
السبت رقمه 6
وهذه أمثله على هذه الخانات :
لو فرضنا أنك تريد تنفيذ الأمر كل يوم جمعه بالأسبوع بالساعه 12 صباحاً ستصبح مدخلاتك كالأتي:
يوم الأسبوع = الجمعه ورقمه 5
الشهر = علامة النجمه * وتعني كل شهر .
اليوم = علامة النجمه * وتعني كل يوم .
الساعه = صفر وهي الساعه 12 صباحاً.
الدقيقه = صفر
نأتي إلى أهم جزء في هذا الموضوع وهو الأمر command
هذا الأمر أحد أوامر الـ MySQL الذي يتم تنفيذه داخل الـ shell لأخذ نسخ احتياطيه من قواعد البيانات .كود PHP:
mysqldump --user=USERNAME --password=****** --quick --add-drop-table --add-locks --extended-insert --lock-tables --all DATABASENAME | gzip > /PATH/TO/BACKUPFOLDER/dbbackup-`date -I`.gz
قم بتغيير الأتي :
USERNAME : إسم المستخدم لقاعدة البيانات الخاصه بك
******** : كلمة السر الخاصه بإسم المستخدم.
DATABASENAME : إسم قاعدة البيانات التي تريد أخذ النسخه الاحتياطيه لها .
PATH/TO/BACKUPFOLDER : وهو مجلد الباك أب الذي أنشأناه بالخطوه الثالثه ويجب أن تقوم بإدخاله بالكامل .
مثال :
ضعه في خانة Command ثم إضغط حفظ Commit Changes .كود PHP:
/home/mysite/forumbackup
ملاحظات :
1- بإمكانك تغيير المده حسب رغبتك وليس شرطاً أن تكون كل أسبوع .
2- الباك أب الذي يتم أخذه سيتم وضعه في مجلد الباك أب الذي أنشأناه مرقم بالتاريخ ومضغوط بصيغة gzip .
3- ملف الباك أب سيستهلك من مساحة الموقع لذلك لو كان موقعك ذو مساحه صغيره حاول أن تمسح ملفات الباك أب الزائده عن طريق الـ FTP .
4- بإمكانك إدخال بريدك الالكتروني في اخر خطوه حتى يتم ارسال رساله لك تخبرك بأنه تم تنفيذ الأمر .
5- بإمكانك وضع أي أمر أخر غير أمر الباك أب الذي وضعته . على سبيل المثال أمر مسح محتويات مجلد ما .
6- إذا لم تفهم شيئاً من هذا الموضوع أتركه للمختصين .
تحياتي لكم