سؤال

لدي قاعدة بيانات MySQL تحتوي على العديد من قواعد البيانات التي يستخدمها أكثر من تطبيق ويب واحد.

أحتاج الآن إلى إنشاء قاعدة بيانات جديدة لا يمكن الوصول إليها إلا عبر حساب مستخدم جديد. لقد كنت أستخدم Navicat v5.3.3 إدارة المستخدمين لمحاولة إعداد هذا ولكن لا يبدو أنه يعمل ولا أعرف ما إذا كان هذا هو MySQL أو Navicat.

ولكن بالنظر إلى أنني أريد ديسيبل جديد أن حساب جديد لا يمكنه الوصول إلا (وليس DBS الآخر) ، ما هي أفضل طريقة لإعداد هذا؟

شكرًا

هل كانت مفيدة؟

المحلول

عليك فقط إنشاء قاعدة البيانات الخاصة بك ومنحها للمستخدم الامتيازات المطلوبة ، يجب عليك بدء أداة استعلام MySQL واكتب الاستعلامات التالية:

CREATE DATABASE foobar;
GRANT ALL PRIVILEGES ON foobar.* TO 'foobar_user'@'localhost'
IDENTIFIED BY 'goodsecret';

يمكنك إلقاء نظرة على دليل MySQL هنا

نصائح أخرى

عادةً ما أستخدم phpmyadmin أو واجهة سطر الأوامر MySQL. قم بإنشاء قاعدة البيانات و (باستخدام حساب Superuser الخاص بك) ، تأكد من أن المستخدم لديه أذونات مناسبة في قاعدة البيانات هذه.

شيء مثل:

CREATE DATABASE database_name;
GRANT ALL ON database_name.* TO new_user@'localhost' IDENTIFIED BY 'password';

سيمنح ذلك "New_user" جميع الامتيازات على محتويات Database_Name ، شريطة أن يكون المستخدم متصلاً من المضيف المحلي باستخدام "كلمة المرور".

إذا كنت تريد واجهة المستخدم الرسومية - أوصي بشدة phpmyadmin (http://www.phpmyadmin.net/)

تحرير: استنادًا إلى وصفك ، ستحتاج أيضًا إلى التأكد من ضبط الأذونات على قواعد البيانات الأخرى لمنع هذا المستخدم الجديد من الوصول إليها ؛ يمكنك استخدام "إظهار المنح" لمعرفة المستخدمين الذين لديهم امتيازات حول الجداول - انظر http://en.wikipedia.org/wiki/internet_explorer_box_model_bug

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top