صفحة 1 من 9 123456 ... الأخيرةالأخيرة
النتائج 1 إلى 15 من 131

الموضوع: الباك أب التلقائي لقاعدة البيانات باستخدام cronjob

  1. #1

    الباك أب التلقائي لقاعدة البيانات باستخدام cronjob



    السلام عليكم ورحمة الله وبركاته

    أعتقد بأن الغالبيه يهتم لأخذ نسخه احتياطيه بشكل دوري لقاعدة بيانات منتداه حتى لا يفقد المواضيع والمشاركات التي وضعت في منتداه وأيضا لا يفقد أسماء الأعضاء الجدد .

    لذلك لك هذه الطريقه التي تجعلك في راحه من أخذ الباك أب للقاعده حسب المده التي تحددها أنت .

    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
    كود 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 
    هذا الأمر أحد أوامر الـ MySQL الذي يتم تنفيذه داخل الـ shell لأخذ نسخ احتياطيه من قواعد البيانات .

    قم بتغيير الأتي :
    USERNAME : إسم المستخدم لقاعدة البيانات الخاصه بك
    ******** : كلمة السر الخاصه بإسم المستخدم.
    DATABASENAME : إسم قاعدة البيانات التي تريد أخذ النسخه الاحتياطيه لها .
    PATH/TO/BACKUPFOLDER : وهو مجلد الباك أب الذي أنشأناه بالخطوه الثالثه ويجب أن تقوم بإدخاله بالكامل .
    مثال :
    كود PHP:
    /home/mysite/forumbackup 
    ضعه في خانة Command ثم إضغط حفظ Commit Changes .



    ملاحظات :
    1- بإمكانك تغيير المده حسب رغبتك وليس شرطاً أن تكون كل أسبوع .
    2- الباك أب الذي يتم أخذه سيتم وضعه في مجلد الباك أب الذي أنشأناه مرقم بالتاريخ ومضغوط بصيغة gzip .
    3- ملف الباك أب سيستهلك من مساحة الموقع لذلك لو كان موقعك ذو مساحه صغيره حاول أن تمسح ملفات الباك أب الزائده عن طريق الـ FTP .
    4- بإمكانك إدخال بريدك الالكتروني في اخر خطوه حتى يتم ارسال رساله لك تخبرك بأنه تم تنفيذ الأمر .
    5- بإمكانك وضع أي أمر أخر غير أمر الباك أب الذي وضعته . على سبيل المثال أمر مسح محتويات مجلد ما .
    6- إذا لم تفهم شيئاً من هذا الموضوع أتركه للمختصين .


    تحياتي لكم







  2. #2
    عضو نشيط
    تاريخ التسجيل
    Jul 2003
    المشاركات
    252


    ياسلام عليك ياعندل

    يشرفني ان اكون اول من يرد عليك
    موضوعك هذ مميز جدا

    ولكني عندي بعض الأستفسارات هل يجب ان نعطي ملف الباكب ترخيص 777 والا ماله دخل


    وبعدين هل هذا الأمر لأخذ نسخه احتياطيه من قاعدة بيانات وحده
    والا كل قواعد بيانات الموقع

    طيب اذا كل قواعد البيانات اجل وش هو الرقم السري اللي راح نحطه
    لأن كل قاعده لها اسم مستخدم وكلمة مرور


    ارجو ان ما اكون اني ثقلت عليك ياعندل






  3. #3


    أهلين بالأخ لوردي والله يشرف مقدارك ياطيب

    بالنسبه لاستفسارك الأول ماله دخل انك تصرح 777 بامكانك تصرحه 700 وهذا افضل شي .

    الأمر اللي كتبته تبع قاعدة بيانات وحده فقط .

    لو حبيت إنك تاخذ باك اب اكثر من قاعده اكتب اسماء قواعد البيانات بالتسلسل ورى بعض وأفصل بينهم مسافه بشرط أن يكون لاسم المستخدم الذي وضعته صلاحية الوصول لهذه القواعد وهذا أهم شي .

    واي استفسار انا حاضر .






  4. #4
    عضو فعال
    تاريخ التسجيل
    Feb 2004
    المشاركات
    1,431


    يا سلام عليك استاذي العندليب
    والله رائع .. يعطيك العافية .. والله يعين السيرفرات من ارتفاع اللود بشكل غير طبيعي

    تحياتي لك استاذي
    ahmad





    __________________
    لتواصل

    بريد + ماسنجر

    admin( @ )tec4serv.com

    3rbhost
    سابقاً

  5. #5


    الله يسلمك يا أخ 3rbhost

    وبالنسبه للووود ما أعتقد بيصير لووود لأن العمليه ماتاخذ اكثر من دقيقتين لتنفيذ الأمر

    وأهلا بيك






  6. #6
    فضلاً اكتب اسمك الحقيقي هنا
    زائرضيف المهاجر


    مشكور اخوي العندليب على هذا الشرح

    جزاك الله كل خير


    تحياتي






  7. #7
    عضو سوبر نشيط
    تاريخ التسجيل
    Jan 2005
    المشاركات
    714


    مشكور عزيزى العندليب على الشرح الرائع ولكن أنت قمت بشرح أخذ نسخة بيانات مضغوطه

    فماذا عند استرجاعها فأولا لابد أن يقوم بفك ضغطها أولا عن طريق الأمر
    كود:
    tar -zxvf vb.tar.gz
    طبعا مع أخذ فى الاعتبار بمسار القاعده المضغوطه
    ثم بعد فكها زرعها عن طريق الأمر
    كود:
    mysql -uxxxx -pxx db <backup/db.sql
    مع الاعتبار أن
    xxxx هى اسم يوزر قاعدة البيانات التى أنشأتها أما
    xx هو الباسورد الخاص بيوزر قاعدة البيانات أما
    db فهى اسم قاعدة البيانات التى أنشأتها
    طبعاا backup/db.sql هو مسار قاعدة البيانات التى قمت بفكها


    لمن لا يريد أن يقوم بضغط القاعده عند فكها يستخدم الامر
    كود:
    mysqldump -uxxxx -pxx db >/backup/vb.sql
    مع الاعتبار أن
    xxxx هى اسم يوزر قاعدة البيانات التى أنشأتها مثال swalif_swalif أما
    xx هو الباسورد الخاص بيوزر قاعدة البيانات أما
    db فهى اسم قاعدة البيانات التى تريد أخذ قاعدة البيانات منها مثال swalif_vb
    طبعاا backup/db.sql هو مسار قاعدة البيانات التى تريد وضع الباك أب فيه

    وعند استرجاعها طبععا أنا شرحت الأمر فى الأعلى

    تقبلوا تحياتى وعذرا على الاطاله






  8. #8
    عضو فعال جدا
    تاريخ التسجيل
    Oct 2003
    المشاركات
    2,775


    اللــــــــــــه يعطيـــــــــك العافية
    يا اخوي الغالي عندليب
    صراحة موضوع تووووب تسلم :shy:






  9. #9
    عضو نشيط
    تاريخ التسجيل
    Oct 2003
    المشاركات
    283


    استاذي العندليب


    اشكرك على هذه الدرر التي تمتعنا بها من وقت لاخر


    سلمك الله وجعل عملك في موازين حسناتك





    __________________
    الحمدلله على مأدام علينا من النعم



  10. السلام عليكم

    جزاك الله الف خير اخوي عندك موضوع اكثر من مميز و مفيد جدا و شرح ما عليه كلام

    و لكن عندي سؤال وين ممكن الاقي كل هذه الأوامر الضرورية او حتى اغلبها لو في موقع محدد الله يجزيك الخير و تحطه لنا

    سلمت يديك و جعله الله في ميزان حسناتك

    بالتوفيق





    __________________
    سبحان الله و بحمده .... سبحان الله العظيم

    للمراسلة

  11. #11
    عضو سوبر نشيط
    تاريخ التسجيل
    Oct 2003
    المشاركات
    788


    مشكور اخوي العندليب شرح وافي بارك الله فيك وهذا مو غريب عنك الله يجزاك الخير
    والشكر موصول للأخ king vb لشرحه طريقة الاسترجاع وهي ضروريه جدا
    ياحليلنا نعرف نسوي نسخة احتياطيه ومانعرف نسترجعها والاخ king vb ماقصر شرحها لنا

    اخوي العندليب انا اضم صوتي لصوت الاخ بي هابي
    و لكن عندي سؤال وين ممكن الاقي كل هذه الأوامر الضرورية او حتى اغلبها لو في موقع محدد الله يجزيك الخير و تحطه لنا
    أخوكم ضوء الفلاش





    __________________
    ضوء الفلاش
    الفلاش.كوم

  12. #12
    عضو سوبر نشيط
    تاريخ التسجيل
    Aug 2004
    المشاركات
    608


    يعطيك العافيه على الشرح الرائع وبارك الله فيك





    __________________
    سبــــــــحان الله وبحمده سبـــــحان الله العظــــيم


    الموقع
    www.dohacom.com


    الايميل
    doha@dohacom.com

  13. #13
    عضو فعال
    تاريخ التسجيل
    Dec 2004
    المشاركات
    1,224


    مشكووووووووووووووووووووووور





    __________________
    لمراسلتي إضغط هنا
    php4arabs@hotmail.co.uk

  14. #14


    الله يسلمكم جميعاً ولا تنسونا من خالص الدعاء .

    شكراً أخي kinkg vb على الإضافه الرائعه ولكن عندي تعديل بسيط

    الأفضل أن يكون الملف مضغوط حتى لا يستهلك مساحه كبيره من مساحة الموقع .
    أما بالنسبه لأمر الاسترجاع فالأمر التالي يختصر كل شي في سطر واحد :

    كود PHP:
    gunzip < /PATH/TO/BACKUPFOLDER/DATABASEFILE.gz mysql --user=USERNAME --password=**** DATABASENAME 
    قم بتغيير الأتي :
    USERNAME : إسم المستخدم لقاعدة البيانات الخاصه بك
    ******** : كلمة السر الخاصه بإسم المستخدم.
    DATABASENAME : إسم قاعدة البيانات التي تريد استرجاع الباك أب إليها .
    PATH/TO/BACKUPFOLDER : وهو مجلد الباك أب ويجب أن تقوم بإدخاله بالكامل .
    DATABASEFILE.gz إسم ملف الباك أب المضغوط .


    الأخ FlashLight والأخ b happy
    أتمنى هذا الموقع يفيدكم في معرفة بعض الأوامر المهمه في السرفرات وخصوصا اللينكس
    http://www.computerhope.com/unix.htm

    تحياتي لكم






  15. #15
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    340


    بارك الله فيك عزيزي
    فعلاً أنت مبدع





    __________________
    أحبكم في الله

صفحة 1 من 9 123456 ... الأخيرةالأخيرة




ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  
0
أضف موقعك هنا