﴿ وَقُل رَّبِّ زِدْنِي عِلْمًا ﴾

And say, "My Lord, increase me in knowledge."

شرح BigDump لرفع واستيراد قواعد البيانات كبيرة الحجم

شرح BigDump لرفع واستيراد قواعد البيانات كبيرة الحجم

إذا حاولت استيراد قاعدة بيانات MySQL كبيرة من خلال phpMyAdmin وظهرت لك أخطاء مثل Timeout أو Maximum execution time أو Allowed memory size exhausted، فقد يكون BigDump حلًا...

2 معجبون
شرح BigDump لرفع واستيراد قواعد البيانات كبيرة الحجم
المشاهدات: 28 الردود: 2

Abo-Karim

Administrator
رقم العضوية
1
تاريخ التسجيل
2015-06-22
الإقامة
ام الدنيــ EGYPT ــا
الموقع الالكتروني
هيلبرنت
آخر نشاط
المشاركات
5,005
المعدل اليومي
1.21
الحلول
1
مستوى التفاعل
205
قوة السمعه
أوسمة العضو

إذا حاولت استيراد قاعدة بيانات MySQL كبيرة من خلال phpMyAdmin وظهرت لك أخطاء مثل Timeout أو Maximum execution time أو Allowed memory size exhausted، فقد يكون BigDump حلًا مناسبًا، خصوصًا على الاستضافات التي تفرض حدودًا على وقت تنفيذ PHP.​

UkOftKg.png

ما هو BigDump؟​

BigDump هو سكربت PHP مخصص لاستيراد قواعد بيانات MySQL الكبيرة على مراحل.

بدلًا من محاولة استيراد ملف SQL بالكامل في عملية واحدة، يقوم BigDump بقراءة جزء من الملف، وتنفيذ مجموعة من الاستعلامات، ثم يبدأ جلسة جديدة لاستكمال الاستيراد من المكان الذي توقف عنده.

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

متى نحتاج إلى BigDump؟​

قد تحتاج إليه عندما تكون لديك قاعدة بيانات كبيرة، مثل:
  • قاعدة بيانات منتدى.
  • قاعدة بيانات WordPress كبيرة.
  • قاعدة بيانات متجر إلكتروني.
  • نسخة SQL كبيرة من موقع قديم.
  • نقل موقع من سيرفر إلى سيرفر آخر.
إذا كان ملف SQL صغيرًا، فمن الأفضل غالبًا استخدام phpMyAdmin أو أداة MySQL مباشرة بدل إضافة طبقة أخرى.

ما الذي تحتاج إليه؟​

قبل البدء تحتاج إلى:
  1. ملف قاعدة البيانات مثل:
HTML
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.

أو ملف مضغوط:
HTML
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.

قاعدة بيانات MySQL أو MariaDB جديدة وفارغة.
اسم قاعدة البيانات.
  1. اسم مستخدم قاعدة البيانات.
  2. كلمة مرور قاعدة البيانات.
  3. استضافة تحتوي على PHP وMySQLi.
  4. طريقة لرفع الملفات إلى السيرفر مثل FTP أو File Manager.
BigDump التقليدي يدعم ملفات SQL وملفات GZip، مع وجود بعض القيود حسب حجم الملف وطريقة إنشاء الـdump.


خطوات استخدام BigDump​

1. إنشاء قاعدة البيانات​

أولًا أنشئ قاعدة بيانات جديدة على السيرفر الذي تريد نقل الموقع إليه.

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


2. تجهيز BigDump​

بعد الحصول على ملف BigDump، ستجد ملفًا باسم:
HTML
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.
في النسخة التقليدية، يتم تعديل إعدادات قاعدة البيانات داخل الملف، مثل:
HTML
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.
وهذه المعلومات يجب أن تطابق بيانات قاعدة البيانات التي أنشأتها.


3. رفع الملفات إلى السيرفر​

أنشئ مجلدًا مؤقتًا، مثل:
HTML
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.
ثم ارفع إليه:
HTML
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.
أو:
كود
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.
ويجب أن يكون المجلد قابلًا للقراءة والتنفيذ بواسطة PHP.


4. تشغيل BigDump​

بعد رفع الملفات، افتح:
HTML
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.
سيعرض لك BigDump ملف قاعدة البيانات الموجود في المجلد.

اختر ملف الـSQL واضغط:

Start Import

بعدها يبدأ الاستيراد على مراحل.

لا تغلق صفحة المتصفح أثناء عملية الاستيراد إذا كانت النسخة التي تستخدمها تعتمد على استمرار جلسات المتصفح لإكمال العملية.


5. انتظر حتى انتهاء الاستيراد​

قد يستغرق الاستيراد وقتًا طويلًا حسب:
  • حجم قاعدة البيانات.
  • سرعة القرص.
  • سرعة MySQL/MariaDB.
  • عدد الجداول.
  • عدد السجلات.
  • إعدادات PHP.
  • إعدادات MySQL.
إذا كان الملف كبيرًا جدًا، قد تحتاج إلى تعديل عدد الأسطر التي تتم معالجتها في كل جلسة، مثل إعداد:
HTML
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.
والوثائق التقليدية لـBigDump تشير إلى إمكانية تقليل حجم كل جلسة إذا ظهرت أخطاء Timeout.


مشكلة مهمة: Extended Inserts​

من أشهر المشاكل التي قد تواجه BigDump وجود استعلامات SQL ضخمة جدًا من نوع Extended INSERT.

إذا كان هناك INSERT واحد يحتوي على عدد هائل من السجلات، فقد لا يستطيع BigDump تقسيمه بالشكل المطلوب، وقد تظهر أخطاء مثل:
HTML
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.
أو:
HTML
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.
في هذه الحالة قد تحتاج إلى إعادة إنشاء نسخة SQL بطريقة تقلل حجم الـINSERT statements.


خطوة مهمة جدًا بعد الانتهاء​

بعد التأكد من نجاح الاستيراد، احذف BigDump وملف قاعدة البيانات من السيرفر.

مثلًا:
HTML
🔒 يجب تسجيل الدخول لمشاهدة محتوى الكود.
لا تترك bigdump.php متاحًا على موقعك.
وجود أداة استيراد قواعد البيانات مكشوفة على الإنترنت يمثل خطرًا أمنيًا كبيرًا، خصوصًا إذا كانت تحتوي على بيانات الاتصال بقاعدة البيانات. وثائق BigDump نفسها تؤكد ضرورة إزالة السكربت وملفات الـdump بعد انتهاء العملية.

هل BigDump هو الخيار الأفضل حاليًا؟​

ليس دائمًا.
إذا كان لديك SSH أو Terminal على السيرفر، فاستيراد قاعدة البيانات مباشرة باستخدام MySQL غالبًا أبسط وأفضل من استخدام سكربت PHP، لأنه لا يخضع لنفس حدود HTTP/PHP الخاصة بالرفع والتنفيذ. وثائق phpMyAdmin نفسها تشير إلى استخدام أدوات MySQL من سطر الأوامر عند توفر shell access.
أما إذا كنت على استضافة لا توفر SSH أو لديك حدود صارمة على PHP، فقد يكون BigDump مفيدًا.
وهناك أيضًا إصدارات/إعادة بناء أحدث من BigDump تستهدف PHP 8.1+، مثل مشروع w3spi5/bigdump الذي يقدم واجهة ويب وCLI ويدعم ملفات SQL وSQL.GZ وSQL.BZ2.

الخلاصة​

BigDump مناسب عندما تكون المشكلة هي أن استيراد SQL كبير يفشل بسبب حدود PHP أو وقت التنفيذ.

لكن إذا كان لديك وصول SSH، فلا يوجد سبب لاستخدام BigDump لمجرد أن قاعدة البيانات كبيرة؛ يمكن استيرادها مباشرة باستخدام MySQL.

نصيحة مهمة: لا ترفع bigdump.php إلى موقعك وتتركه هناك بعد انتهاء الاستيراد. احذفه فورًا بعد التأكد من نجاح العملية.
التحميل من هنا // https://www.mediafire.com/file/85uv6yzhfzxbz01/bigdump.zip/file
 
سكربت رائع ومميزاته جميلة
وهنا المصدر الأحدث له والجيل الجديد منه


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