انتقل إلى محتوى الدرس

Creating Accounts with CREATE USER إنشاء الحساب بـ CREATE USER

تعلّم إدارة حسابات المستخدمين والمصادقة في MySQL بأسلوب MySQL 8 الحديث مع أمثلة استعلامات SQL وتطبيقات تفاعلية.
1 صفوف تعليمية
MySQL
7 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

يُحظر هندسياً وأمنياً ربط تطبيقات الويب أو الخوادم الخلفية بحساب المدير العام 'root'؛ بل يجب إنشاء حساب مخصص لكل خدمة عبر الأمر القياسي CREATE USER:

  • CREATE USER IF NOT EXISTS 'shop_app'@'10.0.1.%': ينشئ الحساب إذا لم يكن موجوداً مسبقاً، مما يمنع توقف سكربتات الإعداد الآلي بالخطأ رقم 1396.
  • IDENTIFIED BY 'Str0ng#AppKey2026!': يمرر كلمة المرور إلى محرك التشفير الافتراضي في الخادم ليحفظ بصمتها المشفرة غير القابلة للعكس داخل العمود authentication_string.
  • حساب جديد بلا صلاحيات افتراضية: يُنشأ الحساب الجديد في MySQL 8 بصلاحية الاتصال فقط (USAGE)، أي أنه يستطيع تسجيل الدخول ولكنه لا يملك صلاحية قراءة أو تعديل أي جدول حتى تُمنح له الصلاحيات صراحةً (كما سنتعلم في الدرس القادم).
  • فصل الحسابات حسب الوظيفة: خصص حساباً مستقلاً لتطبيق الويب ('shop_app') وحساباً منفصلاً للتقارير ('report_reader').
Query OK, 0 rows affected (0.01 sec)
Query OK, 0 rows affected (0.01 sec)
SQL
CREATE USER IF NOT EXISTS 'shop_app'@'10.0.1.%'
IDENTIFIED BY 'Str0ng#AppKey2026!';

CREATE USER IF NOT EXISTS 'report_reader'@'localhost'
IDENTIFIED BY 'R3adOnly#Pass99!';

محاكي إدارة حسابات المستخدمين والمصادقة في MySQL 8