طريقة تثبيت phpMyAdmin على المضيف المحلي (LEMP Stack)

إذا كنت قد قمت بالفعل بإعداد بيئة LEMP محلية (Linux, Nginx, MariaDB, PHP-FPM) وتثبيت ووردبريس (WordPress) كما هو موضح في "طريقة تثبيت ووردبريس على المضيف المحلي (LEMP Stack)"، فاتبع هذا الدليل لتثبيت phpMyAdmin لإدارة قواعد البيانات بسهولة باستخدام واجهة الويب.

يوضح هذا الدليل خطوات تثبيت phpMyAdmin وتهيئة وصول Nginx إليه، بالإضافة إلى إنشاء مستخدم إداري مخصص والوصول إلى phpMyAdmin من خلال متصفح الويب.

الخطوة 1: تثبيت حزمة phpMyAdmin

قم بتحديث قائمة الحزم لديك ثم ثبّت حزمة phpmyadmin:

sudo apt update

sudo apt install phpmyadmin

ملاحظة حول إضافات PHP

إذا تجاوزت تثبيت وحدات PHP الاختيارية أثناء إعداد بيئة LEMP، قد تحتاج إلى القيام بتثبيتها الآن:

sudo apt install php-mysqli php-mbstring php-zip php-gd php-xml php-curl php-bz2 php-intl

تتضمن إصدارات PHP 8.x إضافة php-json بشكل افتراضي. إذا كنت تثبت إصدارًا مختلفًا، مثل PHP 7 أو إصدارًا أقدم، فقد تحتاج إلى تثبيت إضافة php-json يدويًا.

خيارات التثبيت التفاعلية

أثناء التثبيت، تعامل مع مطالبات الإعداد كالتالي:

اختيار خادم الويب (Web Server Selection)

ستعرض لك الشاشة خيارين: apache2 وlighttpd. لا تقم بتحديد أي منهما. اضغط على مفتاح TAB لتظليل OK، ثم اضغط ENTER.

يرجع ذلك إلى أن Nginx يتعامل مع كتل الخادم (Server Blocks) بطريقة مختلفة ولا يتطلب هذا التكوين التلقائي.

تكوين قاعدة البيانات (dbconfig-common)

اختر Yes عند سؤالك عما إذا كنت تريد تهيئة قاعدة بيانات لـ phpMyAdmin.

كلمة مرور التطبيق (Application Password)

أدخل كلمة مرور للمستخدم الداخلي لإدارة قاعدة البيانات لـ phpMyAdmin، أو اضغط ENTER ليدع النظام يولد كلمة مرور عشوائيًا.

الخطوة 2: تهيئة وصول Nginx

بما أن خادم Nginx لا يقوم بتقديم الملفات من المسار /usr/share/phpmyadmin بشكل افتراضي، اختر إحدى الطريقتين التاليتين بناءً على إعداد الجذر الخاص بموقعك (Web Root).

الخيار (أ): إنشاء وصلة رمزية (Symlink)

موصى به إذا كان جذر الموقع هو /var/www/html.

أنشئ وصلة رمزية مباشرة داخل جذر الويب لديك:

sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

ملاحظة: إذا كان موقع ووردبريس مثبتًا في مجلد فرعي مثل /var/www/html/wordpress، فيمكنك إنشاء الوصلة الرمزية داخل ذلك المجلد بدلًا من ذلك:

sudo ln -s /usr/share/phpmyadmin /var/www/html/wordpress/phpmyadmin

الخيار (ب): إضافة كتلة location /phpmyadmin إلى Nginx

إذا كنت تفضل عدم استخدام الوصلة الرمزية، افتح ملف تكوين كتلة خادم ووردبريس النشط لديك:

sudo nano /etc/nginx/sites-available/wordpress

أضف الكتلة التالية داخل كتلة الخادم الرئيسية server { ... }. تأكد من مطابقة إصدار مقبس PHP-FPM مع إصدار PHP المثبت لديك، مثل php8.3-fpm أو php8.4-fpm:

# --- phpMyAdmin Block ---

location ^~ /phpmyadmin {

    root /usr/share;

    index index.php index.html index.htm;

    location ~ ^/phpmyadmin/(.+\.php)$ {

        try_files $fastcgi_script_name =404;

        include fastcgi_params;

        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

        fastcgi_pass unix:/run/php/php8.3-fpm.sock; # عدّل إصدار PHP حسب الحاجة

    }

    location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {

        root /usr/share;

        expires max;

        log_not_found off;

    }

}

اختبار إعدادات Nginx وإعادة تحميله

اختبر إعدادات Nginx أولًا:

sudo nginx -t

ثم أعد تحميل Nginx لتطبيق التغييرات:

sudo systemctl reload nginx

الخطوة 3: إنشاء مستخدم أدمن مخصص لقاعدة البيانات

في نظامي دبيان (Debian) وأوبونتو (Ubuntu)، يستخدم حساب الجذر (root) في MariaDB مصادقة unix_socket بشكل افتراضي، مما يمنع تسجيل الدخول عبر المتصفح باستخدام phpMyAdmin.

ملاحظة حول المستخدمين الحاليين

إذا كنت بحاجة فقط لإدارة قاعدة بيانات ووردبريس الخاصة بك، يمكنك تسجيل الدخول مباشرة باستخدام حساب wp_user الحالي.

أما لإدارة جميع قواعد البيانات بصلاحيات إدارية كاملة، فأنشئ حساب أدمن مخصصًا كما هو موضح أدناه.

افتح طرفية MariaDB

قم بتشغيل الأمر التالي:

sudo mysql -u root

أنشئ حساب المسؤول

استبدل pma_admin وpassword باسم المستخدم وكلمة المرور اللذين تفضلهما:

CREATE USER 'pma_admin'@'localhost' IDENTIFIED BY 'password';

GRANT ALL PRIVILEGES ON *.* TO 'pma_admin'@'localhost' WITH GRANT OPTION;

FLUSH PRIVILEGES;

EXIT;

الخطوة 4: الوصول إلى phpMyAdmin واختباره

افتح متصفح الويب وانتقل إلى الرابط التالي:

http://localhost/phpmyadmin

سجل الدخول باستخدام بيانات الاعتماد الخاصة بك:

  • اسم المستخدم (Username): اسم المستخدم الذي حددته في الخطوة 3.
  • كلمة المرور (Password): كلمة المرور التي حددتها في الخطوة 3.

استكشاف الأخطاء وإصلاحها

خطأ 404 غير موجود (404 Not Found) عند المسار /phpmyadmin:

تأكد من أن مسار الوصلة الرمزية (symlink) يطابق الدليل الرئيسي (root directory) لخادم Nginx، أو تحقق من إعادة تحميل كتل الإعدادات (configuration block) بنجاح عبر الأمر:

sudo systemctl reload nginx

خطأ 502 بوابة سيئة (502 Bad Gateway) / رفض الوصول (Access Denied):

تأكد من أن التوجيه fastcgi_pass يطابق المسار الفعلي لملف مقبس (socket) PHP-FPM النشط. يمكنك عرض قائمة المقابس باستخدام الأمر:

ls /run/php/

خطأ رفض الوصول لحساب الجذر (Access Denied Error for root):

سجّل الدخول باستخدام حساب المستخدم المخصص pma_admin أو wp_user الذي تم إنشاؤه داخل موجه أوامر (shell) خادم MariaDB.

بعد تسجيل الدخول، يمكنك استخدام phpMyAdmin من خلال متصفح الويب لإدارة قواعد بيانات MySQL/MariaDB الموجودة على بيئة LEMP المحلية.

بهذه الخطوات، يصبح phpMyAdmin مهيأً للعمل مع Nginx وPHP-FPM، مما يتيح لك إدارة قواعد البيانات المحلية بسهولة من خلال واجهة الويب.

إرسال تعليق

أحدث أقدم

نموذج الاتصال