اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

يبدوا أن هنالك مشكلة بالوصول الى قاعدة البيانات باستخدام متغيرات البيئة التي تستخدمها، رجاءا تأكد من التالي:

  • من صحة معلومات اتصال قاعدة البيانات: تحقق من أن معلومات اتصال قاعدة البيانات المحددة في ملف .env صحيحة. تأكد من أن اسم قاعدة البيانات واسم المستخدم وكلمة المرور صحيحة وتتطابق مع تلك المستخدمة في الاستضافة.
  • من وجود قاعدة البيانات: تحقق من أن قاعدة البيانات التي تم تحديدها في ملف .env موجودة في الخادم الذي تم استضافة الموقع عليه. تأكد من أن قاعدة البيانات تم إنشاؤها بشكل صحيح ومتاحة للوصول عبر الاستضافة.
  • من صلاحيات الوصول إلى قاعدة البيانات: تحقق من أن المستخدم المحدد في اتصال قاعدة البيانات لديه الصلاحيات الكافية للوصول إلى قاعدة البيانات وقراءة البيانات منها. يمكنك التحقق من ذلك من خلال لوحة التحكم الخاصة بالاستضافة أو من خلال التواصل مع مزود الاستضافة الخاص بك.
  • إعادة تشغيل خادم الويب ومسح ذاكرة التخزين المؤقت: قد تكون هناك بعض المشاكل في التخزين المؤقت أو الذاكرة المؤقتة للتطبيق، نفذ الأمر php artisan cache:clear ان كنت تمتلك وصول SSH او قم بحذف ملف config داخل bootstrap/cache في حالة عدم ذلك.

  • 0
نشر

هذه المشكلة تحدث عندما لا يكون لمستخدم الـ MySQL الذي تستخدمه حقوق الوصول إلى قاعدة البيانات. لحل هذه المشكلة يمكنك:

  •  إعطاء مستخدم الـ MySQL حقوق الوصول إلى قاعدة البيانات. يمكنك القيام بذلك من خلال MySQL shell:
GRANT ALL ON database_name.* TO 'username'@'localhost';

حيث `database_name` هو اسم قاعدة البيانات و `username` هو مستخدم MySQL الذي تستخدمه.

  • 2. إنشاء مستخدم جديد في MySQL مع حقوق الوصول إلى قاعدة البيانات، ثم استخدام هذا المستخدم في مشروع Laravel. يمكنك إنشاء المستخدم باستخدام:
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON database_name.* TO 'newuser'@'localhost';

ثم في مشروع Laravel، تحرير ملف `.env` وتغيير `DB_USERNAME` و `DB_PASSWORD` إلى اسم المستخدم الجديد وكلمة المرور.

  • في بعض الإصدارات الأحدث من MySQL، يتم تقييد حقوق مستخدم الجذر (`root`) من أجل الأمان. تأكد من أن لمستخدم الجذر حقوق الوصول إلى قاعدة البيانات هذه. يمكنك منحها باستخدام الأمر نفسه في الخيار 1 أعلاه، مع استبدال `username` بـ `root`.
  • 0
نشر

عليك بتنفيذ الأمر التالي في MySQL إذا كان هناك إمكانية لذلك:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'admin';

وهو يستخدم لتعديل حساب المستخدم 'root' على المضيف 'localhost' في قاعدة البيانات MySQL، وتحديد أنواع المصادقة المدعومة في هذا الأمر على أنها 'mysql_native_password'، و تعيين كلمة المرور الجديدة للحساب على 'admin'.

ثم تنفيذ الأمر التالي:

FLUSH PRIVILEGES;

وهو يقوم بإعادة تحميل وإعادة تقديم قائمة الامتيازات الخاصة بالمستخدمين والأدوار، وعند تنفيذه، يتم تحميل أي تغييرات حديثة تم إجراؤها في جداول الامتيازات وإعادة تحميل الامتيازات في الذاكرة لتكون سارية المفعول.

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...