كيفية استيراد البيانات من PostgreSQL موجود إلى ServBay
يأتي ServBay مع PostgreSQL كنظام إدارة قواعد البيانات الافتراضي، لذلك إن استيراد البيانات من PostgreSQL الموجود إلى PostgreSQL الذي يوفره ServBay هو عملية بسيطة نسبيًا. سوف توضح هذه الوثيقة بالتفصيل كيفية استيراد قاعدة بيانات PostgreSQL الحالية إلى PostgreSQL الذي يوفره ServBay وإعداد موقع الـsocket.
المتطلبات المسبقة
قبل البدء في استيراد البيانات، تأكد من استيفاء الشروط التالية:
- تثبيت PostgreSQL المصدر: تحتاج إلى وجود قاعدة بيانات PostgreSQL مصدرية تعمل.
- تثبيت PostgreSQL الهدف: يأتي ServBay مع PostgreSQL مثبت تلقائيًا، فقط تأكد من أنه يعمل.
- صلاحيات المستخدم في قاعدة البيانات: تأكد من امتلاك صلاحيات المدير في كلا PostgreSQL المصدر والهدف لكي تكون قادرًا على تنفيذ عمليات التصدير والاستيراد.
الخطوة الأولى: تصدير البيانات من PostgreSQL المصدر
أولاً، نحتاج إلى تصدير البيانات من قاعدة بيانات PostgreSQL المصدر كملف SQL.
الاتصال بقواعد بيانات PostgreSQL المصدر:
bashpsql -U your_source_username -d your_source_database
1تصدير قاعدة البيانات: استخدم أداة
pg_dump
لتصدير قاعدة بيانات PostgreSQL المصدر كملف SQL. على افتراض أن اسم قاعدة البيانات هوmydatabase
، فإن أمر التصدير كالتالي:bashpg_dump -U your_source_username -d mydatabase -F c -b -v -f mydatabase.dump
1
الخطوة الثانية: إعداد قاعدة بيانات PostgreSQL الهدف
قبل استيراد البيانات، نحتاج إلى إنشاء قاعدة بيانات مماثلة في PostgreSQL التي يقدمها ServBay.
الاتصال بقواعد بيانات PostgreSQL الهدف:
bashpsql -U your_target_username -d postgres -h /Applications/ServBay/tmp
1إنشاء قاعدة بيانات: على افتراض أن اسم قاعدة البيانات لا يزال
mydatabase
، فإن أمر الإنشاء كالتالي:sqlCREATE DATABASE mydatabase;
1
الخطوة الثالثة: استيراد البيانات إلى قاعدة بيانات PostgreSQL الهدف
بعد ذلك، سنقوم باستيراد ملف SQL المصدر إلى PostgreSQL الذي يوفره ServBay.
- استيراد ملف SQL: استخدم أداة
pg_restore
لاستيراد ملف SQL إلى PostgreSQL الهدف. على افتراض أن اسم ملف SQL هوmydatabase.dump
، فإن أمر الاستيراد كالتالي:bashpg_restore -U your_target_username -d mydatabase -v mydatabase.dump -h /Applications/ServBay/tmp
1
الخطوة الرابعة: التحقق من استيراد البيانات
بعد الانتهاء من الاستيراد، يُوصى بالتحقق من صحة البيانات المستوردة.
الاتصال بقواعد بيانات PostgreSQL الهدف:
bashpsql -U your_target_username -d mydatabase -h /Applications/ServBay/tmp
1استعلام عن البيانات: نفذ بعض أوامر الاستعلام للتأكد من أن البيانات قد تم استيرادها بشكل صحيح. على سبيل المثال:
sqlSELECT * FROM your_table_name LIMIT 10;
1
معالجة مشاكل التوافق المحتملة
على الرغم من أن PostgreSQL متوافق بشكل كبير مع إصداراته المختلفة، إلا أنه قد تظهر بعض المشاكل في بعض الحالات. فيما يلي بعض المشاكل الشائعة وحلولها:
1. توافق بعض أوامر SQL
بعض أوامر SQL الخاصة بـ PostgreSQL قد تختلف بين الإصدارات. الحل هو تعديل ملف SQL المصدر يدويًا لتصحيح الأجزاء غير المتوافقة.
2. توافق الملحقات والوحدات
بعض الملحقات والوحدات الموجودة في قاعدة البيانات المصدر قد لا تكون موجودة في قاعدة البيانات الهدف. الحل هو تثبيت الملحقات والوحدات المطلوبة في قاعدة البيانات الهدف. على سبيل المثال:
CREATE EXTENSION IF NOT EXISTS your_extension;
3. المستخدمون والصلاحيات
بعد استيراد البيانات، قد تحتاج إلى إعادة تعيين المستخدمين والصلاحيات. استخدم الأوامر التالية لإنشاء مستخدم ومنحه الصلاحيات في PostgreSQL الهدف:
CREATE USER your_username WITH PASSWORD 'your_password';
GRANT ALL PRIVILEGES ON DATABASE mydatabase TO your_username;
2
الخلاصة
يُعد استيراد البيانات من PostgreSQL موجود إلى PostgreSQL الذي يوفره ServBay عملية بسيطة نسبيًا، تتضمن أساسيات مثل تصدير بيانات PostgreSQL المصدر، إنشاء قاعدة بيانات PostgreSQL الهدف، استيراد البيانات والتحقق منها. من خلال اتباع هذه الخطوات، يمكنك بسهولة نقل قاعدة بيانات PostgreSQL إلى PostgreSQL الذي يوفره ServBay. في حالة مواجهة مشاكل في التوافق، يمكن تعديلها وفقًا للشروط التي تواجهها.