خطأ 1045 (28000) تم رفض الوصول للمضيف المحلي لجذر المستخدم (محلول)
نشرت: 2023-03-14"تم رفض وصول الخطأ 1045 (28000) للمضيف المحلي لجذر المستخدم" هو خطأ شائع عند محاولة الوصول إلى MySQL من خلال WordPress CMS. ومع ذلك ، يمكن أن يحدث هذا الخطأ أيضًا في مواقف أخرى.
يشير الخطأ الذي تواجهه إلى أن المستخدم "الجذر" لا يمتلك الأذونات المطلوبة للوصول إلى قاعدة البيانات من المضيف المحلي. يمكن أن تكون الأسباب الكامنة وراء هذه المشكلة متعددة ، بما في ذلك كلمة مرور غير صحيحة أو اسم مستخدم غير صحيح أو أذونات غير مناسبة ممنوحة للمستخدم.
فيما يلي بعض الخطوات التي يمكنك اتخاذها لحل هذا الخطأ
1. تحقق من اسم المستخدم وكلمة المرور
تأكد من أنك تستخدم اسم المستخدم وكلمة المرور الصحيحين. يجب أن يكون اسم المستخدم "root" ويجب أن تكون كلمة المرور هي الاسم الذي قمت بتعيينه أثناء عملية التثبيت.
في حال كنت تستخدم WordPress ، يجب عليك التحقق من ملف wp-config.php الخاص بك. يمكن العثور على الملف في المجلد الرئيسي لـ WordPress.
بعد فتح الملف ومحاولة تحريره (Visual Studio Code) ، ستظهر لك هذه الشاشة:
تحقق من DB_USER و DB_PASSWORD إذا كان لديهم القيم الصحيحة
/** Database username */ define( 'DB_USER', 'root' );
/** Database password */ define( 'DB_PASSWORD', 'root' );
إذا كنت لا تعرف اسم المستخدم وكلمة المرور الخاصين بقاعدة البيانات ، فقم بالوصول إلى cPanel> قاعدة البيانات> Mysql وتحقق منها.
لتغيير كلمة مرور قاعدة بيانات WordPress ، يرجى اتباع البرنامج التعليمي: تغيير كلمة مرور WordPress في PHPMyAdmin
2. تحقق مما إذا كان المستخدم لديه الامتيازات المطلوبة
تحقق مما إذا كان المستخدم "الجذر" لديه الامتيازات اللازمة للوصول إلى قاعدة البيانات.
الخطوة 1: أولاً ، عليك أن تفتح جهازك الطرفي وأن تكتب ssh [email protected]
ssh [email protected]
الخطوة 2: بعد تسجيل الدخول بنجاح ، اكتب هذا الأمر
mysql -uroot -p
الخطوة 3: بعد إضافة كلمة المرور الخاصة بك ، يمكنك البدء في إضافة الأمر الخاص بك من موجه mysql
الخطوة 4: يمكنك استخدام الأمر التالي للتحقق من الامتيازات:
SHOW GRANTS FOR 'root'@'localhost';
سيُظهر لك هذا قائمة الامتيازات التي يمتلكها المستخدم "root" لخادم "المضيف المحلي". إذا لم يكن لدى المستخدم الامتيازات اللازمة ، فيمكنك منحه باستخدام الأمر التالي:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'password';
ملاحظة: استبدل كلمة المرور بكلمة المرور التي تريد استخدامها.
للتحقق مما إذا كان المستخدم لديه الامتيازات المطلوبة باستخدام phpMyAdmin ، اتبع الخطوات التالية:
- قم بتسجيل الدخول إلى حساب phpMyAdmin الخاص بك.
- انقر فوق علامة التبويب "حسابات المستخدمين".
- حدد جذر المستخدم (أو الذي تريد تغيير كلمة المرور)
- انقر على رابط تعديل الامتيازات
- هنا يمكنك رؤية قائمة الامتيازات التي تم منحها للمستخدم.
- تأكد من منح المستخدم الامتيازات اللازمة للوصول إلى قاعدة البيانات.
- إذا لم يكن لدى المستخدم الامتيازات المطلوبة ، فيمكنك منحها عن طريق تحديد مربعات الاختيار ذات الصلة والنقر فوق الزر "انتقال".
- بمجرد منح الامتيازات المطلوبة ، حاول الوصول إلى قاعدة البيانات مرة أخرى لمعرفة ما إذا كان قد تم حل المشكلة.
يجب التحقق من الإعدادات في المنطقة المميزة:
ملاحظة: إذا لم تتمكن من منح الامتيازات الضرورية من خلال phpMyAdmin ، فقد تحتاج إلى الوصول إلى واجهة سطر أوامر MySQL لمنح الامتيازات.
3. تحقق من حالة خادم MySQL
تأكد من تشغيل خادم MySQL. يمكنك التحقق من حالة الخادم عن طريق تشغيل الأمر التالي بعد تسجيل الدخول في غلاف الخادم:
systemctl status mysql
إذا لم يكن الخادم قيد التشغيل ، فابدأ باستخدام الأمر التالي:
systemctl start mysql
للتحقق من حالة Mysql على استضافة cPanel ، يجب عليك تسجيل الدخول إلى لوحة تحكم الاستضافة الخاصة بك. طريقة أخرى هي الاتصال مباشرة بمزود الاستضافة الخاص بك.
4. تحقق مما إذا كان خادم MySQL يستمع إلى المنفذ الصحيح
تأكد من أن خادم MySQL يستمع إلى المنفذ الصحيح. المنفذ الافتراضي لـ MySQL هو 3306 .
للتحقق مما إذا كان خادم MySQL يستمع إلى المنفذ الصحيح ، يمكنك اتباع الخطوات التالية:
1. افتح Terminal أو موجه الأوامر على الخادم الخاص بك حيث تم تثبيت MySQL.
2. اتصل بخادم MySQL باستخدام عميل سطر الأوامر. يمكنك استخدام الأمر التالي ، مع استبدال username
وكلمة password
ببيانات اعتماد MySQL الفعلية:
mysql -u username -p
3. بمجرد اتصالك بخادم MySQL ، اكتب الأمر التالي لعرض رقم المنفذ الذي يستمع إليه خادم MySQL:
SHOW VARIABLES LIKE 'port';
سيعرض هذا الأمر رقم المنفذ الذي يستمع إليه خادم MySQL. بشكل افتراضي ، تستمع MySQL إلى المنفذ 3306.
يمكنك أيضًا التحقق من رقم المنفذ في ملف تكوين MySQL.
عادةً ما يُطلق على ملف التكوين اسم my.cnf
أو my.ini
، وهو موجود في دليل تثبيت MySQL.
للعثور على دليل تثبيت MySQL ، يمكنك اتباع الخطوات التالية:
1. افتح Terminal أو موجه الأوامر على الخادم الخاص بك حيث تم تثبيت MySQL.
2. اكتب الأمر التالي للتحقق من تثبيت MySQL:
which mysql
إذا تم تثبيت MySQL ، فسيعرض هذا الأمر المسار إلى ملف mysql
القابل للتنفيذ وإلا ستتلقى رسالة خطأ.
إذا تم تثبيت MySQL ، يمكنك استخدام الأمر which
يحدد مرة أخرى للعثور على دليل التثبيت. اكتب الأمر التالي ، مع استبدال /path/to/mysql
بالمسار إلى ملف mysql
القابل للتنفيذ:
which mysql | xargs readlink -f | sed "s|bin/mysql$||"
سيعرض هذا الأمر دليل تثبيت MySQL. يمكنك استخدام هذا الدليل لتحديد موقع ملف تكوين MySQL ( my.cnf
أو my.ini
) وملفات وأدلة MySQL الأخرى.
بدلاً من ذلك ، إذا كان لديك وصول إلى عميل MySQL ، فيمكنك أيضًا تنفيذ الاستعلام التالي للعثور على دليل تثبيت MySQL:
SELECT @@basedir;
سيعرض هذا دليل تثبيت MySQL.
يمكنك أيضًا التحقق من ملف تكوين MySQL للتحقق من رقم المنفذ الذي تم تكوين MySQL للاستماع إليه. عادةً ما يُطلق على ملف التكوين اسم my.cnf أو my.ini ، وهو موجود في دليل تثبيت MySQL.
افتح ملف التكوين باستخدام محرر نصوص وابحث عن معلمة المنفذ. تحدد قيمة هذه المعلمة رقم المنفذ الذي تم تكوين MySQL للاستماع عليه.
إذا كان خادم MySQL لا يستمع إلى المنفذ الصحيح ، يمكنك تغيير معلمة المنفذ في ملف التكوين وإعادة تشغيل خادم MySQL لتطبيق التغييرات.
لا تنس إعادة تشغيل خدمة Mysql إذا قمت بتغيير المنفذ:
service mysql restart
5. إعادة تعيين كلمة مرور الجذر
إذا لم تنجح أي من الخطوات المذكورة أعلاه ، فيمكنك محاولة إعادة تعيين كلمة مرور الجذر. يمكنك القيام بذلك باتباع الخطوات الواردة في هذه المقالة:
https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html
ملاحظة: تتطلب هذه الطريقة أن يكون لديك حق الوصول إلى ملف تكوين MySQL والقدرة على إعادة تشغيل خادم MySQL.
قد تكون مهتمًا بالقراءة:
كيفية إصلاح خطأ "فشل التثبيت: تعذر إنشاء دليل" على WordPress
كيفية إصلاح WordPress عالق في وضع الصيانة (محلول)
كيفية إصلاح "فشل التحديث. الاستجابة ليست استجابة JSON صالحة "
كيفية إصلاح "خطأ في إنشاء اتصال قاعدة بيانات"؟ - 2023
بصفتي أحد مؤسسي Codeless ، أحضر خبرة في تطوير WordPress وتطبيقات الويب ، بالإضافة إلى سجل حافل لإدارة الاستضافة والخوادم بفعالية. يدفعني شغفي لاكتساب المعرفة وحماسي لبناء واختبار تقنيات جديدة إلى الابتكار والتحسين باستمرار.