Skip to main content

ما هو mysqldump وكيف يمكنني استخدامه؟

Getting Started with the Firebase Realtime Database on Android - Firecasts (أبريل 2025)

Getting Started with the Firebase Realtime Database on Android - Firecasts (أبريل 2025)
Anonim

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

ما هو mysqldump المستخدمة؟

ال mysqldump أداة قمت بتغطيتها لكلا من هذه الحالات. إنها الوظيفة الأساسية هي أخذ قاعدة بيانات MySQL و "تفريغها" كملف نصي. ولكن ليس فقط أي ملف نصي … الملف هو مجموعة من عبارات SQL. هذه العبارات ، عند تنفيذها ، ستعيد بناء قاعدة البيانات الخاصة بك إلى الحالة الدقيقة التي كانت عليها عند تنفيذ التفريغ.

لذلك يمكنك استخدامها mysqldump لأخذ الصادرات من قاعدة البيانات. يمكن أن يكون ذلك لغرض النسخ الاحتياطي ، أو لأنك تقوم بنقل قاعدة البيانات إلى مضيف جديد. في كلتا الحالتين ، عليك في مرحلة ما استيراد الملف النصي مرة أخرى إلى خادم قاعدة بيانات MySQL. سيقوم بتنفيذ جميع عبارات SQL في الملف ، الذي يعيد بناء قاعدة البيانات الخاصة بك إلى حالتها الأصلية. هذا الجزء لا يستخدم في الواقع mysqldump الأمر ، لكنه لن يكون ممكنا من دون هذه الأداة إما!

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

  • يعتبر Hotcopying a DB من MySQL Enterprise طريقة رائعة لتحقيق هذه النسخ الاحتياطية … إذا كنت لا تمانع في علامة الأسعار الخاصة بالمؤسسة.
  • قد يكون نسخ أدلة بيانات DB أمرًا صعبًا إذا كنت تنتقل عبر أنظمة التشغيل ، نظرًا لأن وجهاتها ستكون مختلفة.
  • سيعطيك التصدير إلى ملف نصي محدد المحتوى ، ولكن سيتعين عليك إعادة إنشاء البنية بنفسك. ومن الأفضل أن تحصل عليه بشكل صحيح …
  • يمكنك في كثير من الأحيان إنشاء نسخ احتياطية من قواعد البيانات من برامج واجهة المستخدم الرسومية مثل MySQL Workbench. ولكن هذه هي عملية يدوية ، بمعنى أنه ليس بالشيء الذي يمكنك كتابته أو تضمينه في مهمة مجمعة.

تثبيت أداة mysqldump

إذا كنت مهتمًا بهذه المقالة ، فستجد أن لديك MySQL مثبتًا بالفعل. إذا كان هذا هو الحال ، فإن الأخبار الجيدة - لديك بالفعل mysqldump! إذا لم يكن الأمر كذلك ، فيمكنك ببساطة تثبيت MySQL بالطريقة القياسية لنظام التشغيل الخاص بك.

بالنسبة لنظام التشغيل Windows ، راجع تعليماتنا هنا لتثبيت MySQL على Windows 7 (لا تزال عملية التثبيت متشابهة). وبالمثل على macOS ، راجع توجيهاتنا لتثبيت MySQL على نظام MacOS 10.7 (مرة أخرى ، أقدم ولكن لا يزال ساريًا). يمكن لمستخدمي أنظمة Linux المستندة إلى Ubuntu استخدام الأمر التالي لتثبيت عميل MySQL والأدوات المساعدة:

sudo apt تثبيت mysql-client

استخراج تفريغ MySQL

بمجرد تثبيت ، يمكنك استخدام mysqldump للحصول على نسخة احتياطية كاملة من قاعدة البيانات الخاصة بك.

mysqldump -h اسم مضيف DB أو IP - u اسم مستخدم DB -p اسم قاعدة البيانات> db_backup.sql

دعنا نكسر هذا الأمر قليلاً:

  • "ح": هذا العلم هو قاعدة البيانات مضيف. يمكن أن يكون اسم مضيف كامل (على سبيل المثال myhost.domain.com) أو عنوان IP. يمكنك أيضًا ترك هذا فارغًا إذا كنت تقوم بتشغيله على نفس المضيف مثل خادم MySQL.
  • "-u": كما ذكر ، هذا هو الخاص بك اسم المستخدم.
  • "ف": إذا كنت تحصل على تثبيت MySQL بشكل صحيح ، فستحتاج إلى تثبيت كلمه السر للاتصال. ستطالبك هذه العلامة بدون وسيطة بكلمة مرور عند تنفيذ الأمر. في بعض الأحيان يكون من المفيد تقديم كلمة المرور الخاصة بك مباشرةً كوسيطة لهذه العلامة ، على سبيل المثال في نص برمجي احتياطي. ولكن عند المطالبة ، لا يجب عليك ذلك ، لأنه إذا تمكن شخص ما من الوصول إلى جهاز الكمبيوتر الخاص بك ، فيمكنه الحصول على كلمة المرور هذه في سجل الأوامر الخاص بك.
  • "> db_backup.sql": هذا الجزء الأخير هو قول mysqldump لتوجيه كل مخرجاتها إلى ملف. عادةً ، سيخرج الأمر كل شيء مباشرة إلى وحدة التحكم ، مما يعني أنك ستشاهد مجموعة من عبارات SQL تطير بها. ولكن بدلاً من ذلك ، يعد الرمز *> * علامة على تحويل كل هذه الأشياء إلى ملف نصي مسمى بدلاً من ذلك. وإذا لم يكن هذا الملف موجودًا ، فسيتم إنشاؤه تلقائيًا.

عند الانتهاء ، سيكون لديك ملف .SQL. هذا هو مجرد ملف نصي يحتوي على عبارات SQL. يمكنك فتحه في أي محرر نصوص لفحص المحتويات. بالنظر إلى التصدير من قاعدة بيانات WordPress ، يمكنك أن ترى كيف يتم جمع هذه الملفات معًا.

الملف مقسم إلى أقسام. في الصورة أعلاه ، يمكننا أن نرى القسم الأول يقوم بإعداد الجدول لتعليقات ووردبريس. ثم يعيد القسم الثاني إنشاء المحتوى (أي سجلات التعليقات) في تلك الجداول. عندما تذهب لإعادة استيراد تفريغ MySQL مرة أخرى ، فإن الأمر يعمل من خلال الملف ، وتنفيذ البيانات وإعادة بناء قاعدة البيانات الخاصة بك فقط بالطريقة التي كانت عليه. اذن كيف تفعل ذلك؟ لنلقي نظرة.

استيراد ملف تفريغ MySQL

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

لإعادة استيراد بياناتك ، اتبع الخطوات التالية:

  1. تسجيل الدخول إلى خادم MySQL مع ك أمر.
  2. نوع استخدم اسم قاعدة البيانات في الموجه ، واستبدال الاسم المناسب للقاعدة.
  3. أدخل المصدر اسم الملف، استبدال اسم ملف تفريغ أخذته مسبقاً.

عند الانتهاء ، سترى قائمة طويلة من الرسائل مع ملاحظة أنه يتم تنفيذ عبارات SQL. ترقب الأخطاء ، ولكن إذا كان لديك الأذونات الصحيحة ، فيجب أن تكون على ما يرام لأنها قاعدة بيانات فارغة.

بمجرد اكتمال العملية ، سيكون لديك نسخة مكررة من قاعدة البيانات الأصلية. يمكنك التحقق من ذلك عن طريق إجراء تفريغ آخر ، ومقارنة المخرجات. سيكون بإمكان محرر النصوص اللائق القيام بذلك نيابةً عنك ، أو أداة * diff * مخصصة مثل الأداة الموضحة في الصورة أدناه:

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