0Pricing
Linux Server Deployment & SSH Mastery · درس

استراتيجيات النسخ الاحتياطي لقاعدة البيانات واستعادتها

احمِ بياناتك بنسخ احتياطية موثوقة: أفرغ قواعد بيانات PostgreSQL وMySQL واستعدها، وأتمت النسخ الاحتياطي باستخدام cron، وافهم الاسترداد إلى نقطة زمنية لتتمكن من تجاوز أعطال الأقراص والأخطاء.

استراتيجيات النسخ الاحتياطي لقاعدة البيانات واستعادتها درس مجاني في Linux Server Deployment & SSH Mastery على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Linux Server Deployment & SSH Mastery، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Linux Server Deployment & SSH Mastery 4 دروس في المجموع.

النسخ الاحتياطية جزء من الأمان

لقد ثبّت قاعدة بيانات، وقيّدت الوصول، وأمّنت الاتصالات. لكن الخادم المحصّن يظل عرضة لتعطّل القرص أو تنفيذ DROP TABLE عن طريق الخطأ أو برمجيات الفدية.

النسخ الاحتياطية هي خط الدفاع الأخير. ولا تكون قاعدة البيانات آمنة إلا بقدر أمان أحدث نسخة احتياطية اختُبرت.

النسخ الاحتياطية المنطقية مقابل المادية

هناك منهجان عامّان:

  • منطقية — تصدير عبارات SQL / البيانات (مثل pg_dump وmysqldump). قابلة للنقل ومقروءة للبشر، لكن استعادتها أبطأ.
  • مادية — نسخ ملفات البيانات الخام. سريعة لقواعد البيانات الضخمة، لكنها مرتبطة بإصدار الخادم.

تبدأ معظم الإعدادات بالنسخ الاحتياطية المنطقية.

تفريغ قاعدة بيانات PostgreSQL

يصدّر pg_dump قاعدة بيانات واحدة. ويكون التنسيق المخصص (-Fc) مضغوطًا ويدعم الاستعادة الانتقائية.

pg_dump -U appuser -Fc mydb > mydb_$(date +%F).dump

استعادة PostgreSQL

استعِد تفريغًا بالتنسيق المخصص باستخدام pg_restore. أما تفريغ SQL العادي، فمرّره إلى psql بدلًا من ذلك.

createdb -U appuser mydb_restored
pg_restore -U appuser -d mydb_restored mydb_2026-05-30.dump

تفريغ MySQL واستعادته

يستخدم MySQL/MariaDB الأمر mysqldump للتصدير والأمر mysql للاستيراد. ويكون التفريغ بتنسيق SQL العادي افتراضيًا.

mysqldump -u appuser -p mydb > mydb_$(date +%F).sql
mysql -u appuser -p mydb_restored < mydb_2026-05-30.sql

النسخ الاحتياطي لجميع قواعد البيانات

لالتقاط نسخة من خادم كامل، يوفّر كلا المحركين تفريغًا كاملًا للعنقود. ويفيد ذلك قبل الترقيات الرئيسية أو عمليات الترحيل.

pg_dumpall -U postgres > all_$(date +%F).sql
mysqldump -u root -p --all-databases > all_$(date +%F).sql

الأتمتة باستخدام Cron

النسخة الاحتياطية التي يتعيّن عليك تذكّر تشغيلها ستُنسى في النهاية. جدوِلها باستخدام cron. ضع أمر التفريغ في برنامج نصي وشغّله كل ليلة.

# crontab -e  -> run at 02:30 every day
30 2 * * * /usr/local/bin/db_backup.sh >> /var/log/db_backup.log 2>&1

برنامج نصي بسيط للنسخ الاحتياطي

يضع البرنامج النصي الجيد طوابع زمنية على الملفات ويحذف الملفات القديمة حتى لا يمتلئ القرص. ويحتفظ هذا المثال بتفريغات آخر 14 يومًا.

#!/bin/bash
DIR=/var/backups/db
pg_dump -U appuser -Fc mydb > $DIR/mydb_$(date +%F).dump
find $DIR -name 'mydb_*.dump' -mtime +14 -delete

التخزين خارج الموقع

تموت النسخة الاحتياطية الموجودة على الخادم نفسه بموته. انسخ التفريغات إلى مكان آخر — مثل تخزين الكائنات أو مضيف آخر أو كليهما.

استخدم rsync أو CLI سحابيًا باعتباره الخطوة الأخيرة في برنامج النسخ الاحتياطي.

rsync -avz /var/backups/db/ backup@remote:/srv/db_backups/
# or: aws s3 cp $DIR/mydb_$(date +%F).dump s3://my-bucket/

الاستعادة إلى نقطة زمنية

تؤدي التفريغات اليومية إلى فقدان ما يصل إلى يوم كامل من البيانات. ولتحقيق فقدان صفري أو ضئيل، مكّن الأرشفة المستمرة (أرشفة WAL في PostgreSQL والسجلات الثنائية في MySQL). وبدمجها مع نسخة احتياطية أساسية، يمكنك الاستعادة إلى أي لحظة.

وهذا هو المعيار الذهبي لقواعد بيانات الإنتاج.

أفضل الممارسات

اجعل النسخ الاحتياطية موثوقة:

  • اختبر عمليات الاستعادة بانتظام — فالنسخة الاحتياطية غير المختبرة مجرد تخمين
  • أتمت مهام النسخ الاحتياطي وراقبها لاكتشاف حالات الفشل
  • خزّن نسخًا خارج الموقع
  • احتفظ بأجيال متعددة، وليس بأحدث نسخة فقط

تحقق سريع

اختبر معرفتك بالنسخ الاحتياطية.

مراجعة

لديك الآن استراتيجية لحماية قاعدة البيانات:

  • تفريغات منطقية باستخدام pg_dump/mysqldump واستعادات باستخدام pg_restore/mysql
  • تفريغات كاملة للعنقود من أجل عمليات الترحيل
  • نسخ احتياطية مؤتمتة تحذف الملفات القديمة ذاتيًا عبر cron
  • نسخ خارج الموقع واستعادة إلى نقطة زمنية لتقليل فقدان البيانات

اختبر عمليات الاستعادة دائمًا — فهذا يُكمل التشغيل الآمن لقاعدة البيانات.

الأسئلة الشائعة

هل درس «استراتيجيات النسخ الاحتياطي لقاعدة البيانات واستعادتها» مجاني؟

نعم — نص درس «استراتيجيات النسخ الاحتياطي لقاعدة البيانات واستعادتها» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Linux Server Deployment & SSH Mastery، انتقل إلى CoddyKit PRO. تتضمن دورة Linux Server Deployment & SSH Mastery 4 دروس في المجموع.

ماذا ستتعلم في «استراتيجيات النسخ الاحتياطي لقاعدة البيانات واستعادتها»؟

احمِ بياناتك بنسخ احتياطية موثوقة: أفرغ قواعد بيانات PostgreSQL وMySQL واستعدها، وأتمت النسخ الاحتياطي باستخدام cron، وافهم الاسترداد إلى نقطة زمنية لتتمكن من تجاوز أعطال الأقراص والأخطاء. تتمرن على Linux Server Deployment & SSH Mastery مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Linux Server Deployment & SSH Mastery؟

لا تُشترط خبرة سابقة. Linux Server Deployment & SSH Mastery على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «استراتيجيات النسخ الاحتياطي لقاعدة البيانات واستعادتها»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Linux Server Deployment & SSH Mastery هذا؟

نعم. كل درس في Linux Server Deployment & SSH Mastery يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. تثبيت PostgreSQL/MySQL
  2. مستخدمو قواعد البيانات والتحكم في الوصول
  3. تأمين اتصالات قواعد البيانات
  4. استراتيجيات النسخ الاحتياطي لقاعدة البيانات واستعادتها
← العودة إلى Linux Server Deployment & SSH Mastery