ذكري المظهر

كيفية إدارة قواعد بيانات mysql والمستخدمين من سطر الأوامر

اضافة , تعديل , حذف قواعد البيانات MySQL insert , update , delete php & mysql 35

اضافة , تعديل , حذف قواعد البيانات MySQL insert , update , delete php & mysql 35

جدول المحتويات:

Anonim

MySQL هو نظام إدارة قواعد البيانات العلائقية المفتوح المصدر الأكثر شعبية. يسمح لنا خادم MySQL بإنشاء العديد من المستخدمين وقواعد البيانات ومنح الامتيازات المناسبة حتى يتمكن المستخدمون من الوصول إلى قواعد البيانات وإدارتها.

يشرح هذا البرنامج التعليمي كيفية استخدام سطر الأوامر لإنشاء وإدارة قواعد بيانات MySQL أو MariaDB والمستخدمين.

قبل ان تبدأ

قبل البدء في هذا البرنامج التعليمي ، نفترض أن لديك بالفعل خادم MySQL أو MariaDB مثبت على نظامك. سيتم تنفيذ جميع الأوامر كمستخدم الجذر.

لفتح موجه MySQL ، اكتب الأمر التالي وأدخل كلمة مرور مستخدم MySQL الجذر عندما يُطلب منك ذلك:

mysql -u root -p

إنشاء قاعدة بيانات MySQL جديدة

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

CREATE DATABASE database_name;

Query OK, 1 row affected (0.00 sec)

ERROR 1007 (HY000): Can't create database 'database_name'; database exists

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

CREATE DATABASE IF NOT EXISTS database_name;

Query OK, 1 row affected, 1 warning (0.00 sec)

في الإخراج أعلاه ، Query OK يعني أن الاستعلام كان ناجحًا ، ويخبرنا 1 warning أن قاعدة البيانات موجودة بالفعل ولم يتم إنشاء قاعدة بيانات جديدة.

قائمة جميع قواعد بيانات MySQL

يمكنك سرد جميع قواعد البيانات الموجودة على خادم MySQL أو MariaDB باستخدام الأمر التالي:

SHOW DATABASES;

سيظهر الإخراج بشيء من هذا القبيل:

+--------------------+ | Database | +--------------------+ | information_schema | | database_name | | mysql | | performance_schema | | sys | +--------------------+ 5 rows in set (0.00 sec)

يتم إنشاء قواعد البيانات information_schema و mysql و performance_schema و sys في وقت التثبيت ويقومون بتخزين معلومات حول جميع قواعد البيانات الأخرى وتكوين النظام والمستخدمين والإذن والبيانات الهامة الأخرى. قواعد البيانات هذه ضرورية للوظائف المناسبة لتثبيت MySQL.

حذف قاعدة بيانات MySQL

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

لحذف MySQL أو MariaDB ، قم بتشغيل قاعدة البيانات الأمر التالي:

DROP DATABASE database_name;

Query OK, 0 rows affected (0.00 sec)

ERROR 1008 (HY000): Can't drop database 'database_name'; database doesn't exist

لتجنب هذا الخطأ ، يمكنك استخدام الأمر التالي:

DROP DATABASE IF EXISTS database_name;

إنشاء حساب مستخدم MySQL جديد

يتكون حساب المستخدم في MySQL من اسم المستخدم وأجزاء اسم المضيف.

لإنشاء حساب مستخدم MySQL جديد ، قم بتشغيل الأمر التالي ، ما عليك سوى استبدال "database_user" باسم المستخدم الذي ترغب في إنشائه:

CREATE USER 'database_user'@'localhost' IDENTIFIED BY 'user_password';

في الأمر أعلاه ، قمنا بتعيين جزء اسم المضيف على المضيف localhost مما يعني أن هذا المستخدم سيكون قادرًا على الاتصال بخادم MySQL فقط من المضيف المحلي (أي من النظام الذي يعمل عليه MySQL Server). إذا كنت ترغب في منح حق الوصول من مضيف (مضيف) آخر ، فقط قم بتغيير localhost باستخدام IP الخاص بالجهاز البعيد أو استخدم حرف البدل '%' لجزء المضيف ، مما يعني أن حساب المستخدم سيكون قادرًا على الاتصال من أي مضيف.

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

CREATE USER IF NOT EXISTS 'database_user'@'localhost' IDENTIFIED BY 'user_password';

Query OK, 0 rows affected, 1 warning (0.00 sec)

تغيير كلمة مرور حساب مستخدم MySQL

يعتمد بناء جملة تغيير كلمة مرور حساب مستخدم MySQL أو MariaDB على إصدار الخادم الذي تستخدمه على نظامك.

يمكنك العثور على إصدار الخادم الخاص بك عن طريق إصدار الأمر التالي:

mysql --version

ALTER USER 'database_user'@'localhost' IDENTIFIED BY 'new_password';

SET PASSWORD FOR 'database_user'@'localhost' = PASSWORD('new_password');

في كلتا الحالتين ، يجب أن يبدو الإخراج كما يلي:

Query OK, 0 rows affected (0.00 sec)

قائمة بجميع حسابات المستخدمين MySQL

يمكنك سرد جميع حسابات مستخدمي MySQL أو MariaDB عن طريق الاستعلام عن جدول mysql.users :

SELECT user, host FROM mysql.user;

يجب أن يكون الإخراج مشابهاً أدناه:

+------------------+-----------+ | user | host | +------------------+-----------+ | database_user | % | | database_user | localhost | | debian-sys-maint | localhost | | mysql.session | localhost | | mysql.sys | localhost | | root | localhost | +------------------+-----------+ 6 rows in set (0.00 sec)

حذف حساب مستخدم MySQL

لحذف حساب مستخدم ، استخدم الأمر التالي:

DROP USER 'database_user@'localhost';

ERROR 1396 (HY000): Operation DROP USER failed for 'database_user'@'localhost'

كما هو الحال عند العمل مع قواعد البيانات لتجنب الخطأ الذي يمكنك استخدامه:

DROP USER IF EXISTS 'database_user'@'localhost';

Query OK, 0 rows affected, 1 warning (0.00 sec)

منح أذونات لحساب مستخدم MySQL

هناك أنواع متعددة من الامتيازات التي يمكن منحها لحساب المستخدم. يمكنك العثور على قائمة كاملة بالامتيازات التي تدعمها MySQL هنا. في هذا الدليل ، سنتناول عدة أمثلة:

لإعطاء كافة الامتيازات لحساب مستخدم عبر قاعدة بيانات محددة ، استخدم الأمر التالي:

GRANT ALL PRIVILEGES ON database_name.* TO 'database_user'@'localhost';

لتخصيص كافة الامتيازات لحساب المستخدم عبر جميع قواعد البيانات ، استخدم الأمر التالي:

GRANT ALL PRIVILEGES ON *.* TO 'database_user'@'localhost';

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

GRANT ALL PRIVILEGES ON database_name.table_name TO 'database_user'@'localhost';

GRANT SELECT, INSERT, DELETE ON database_name.* TO database_user@'localhost';

إبطال الأذونات من حساب مستخدم MySQL

REVOKE ALL PRIVILEGES ON database_name.* TO 'database_user'@'localhost';

عرض امتيازات حساب مستخدم MySQL

للعثور على الامتياز (الامتيازات) الممنوح لنوع حساب مستخدم MySQL محدد:

SHOW GRANTS FOR 'database_user'@'localhost';

+---------------------------------------------------------------------------+ | Grants for database_user@localhost | +---------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'database_user'@'localhost' | | GRANT ALL PRIVILEGES ON `database_name`.* TO 'database_user'@'localhost' | +---------------------------------------------------------------------------+ 2 rows in set (0.00 sec)

استنتاج

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

هذا كل شئ! إذا كان لديك أي أسئلة أو تعليقات ، فلا تتردد في ترك تعليق.

مسيل مريب