Android

Как создать учетные записи пользователей MySQL и предоставить привилегии

rytp барбоскины без мата VIDEOMEGA RU

rytp барбоскины без мата VIDEOMEGA RU

Оглавление:

Anonim

MySQL - самая популярная система управления реляционными базами данных с открытым исходным кодом. Сервер MySQL позволяет нам создавать многочисленные учетные записи пользователей и предоставлять соответствующие привилегии, чтобы пользователи могли получать доступ к базам данных и управлять ими.

В этом руководстве описывается, как создавать учетные записи пользователей MySQL и предоставлять привилегии.

Прежде чем вы начнете

Мы предполагаем, что в вашей системе уже установлен сервер MySQL или MariaDB.

Все команды выполняются внутри оболочки MySQL от имени пользователя root или администратора. Минимальные привилегии, необходимые для создания учетных записей пользователей и определения их привилегий, - это CREATE USER и GRANT .

Чтобы получить доступ к оболочке MySQL, введите следующую команду и при появлении запроса введите пароль пользователя root MySQL:

mysql -u root -p

Создать новую учетную запись пользователя MySQL

Учетная запись пользователя в MySQL состоит из частей имени пользователя и имени хоста.

Чтобы создать новую учетную запись пользователя MySQL, выполните следующую команду:

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'user_password'; Замените значение заполнителя newuser на предполагаемое имя нового пользователя, а значение заполнителя user_password на пароль пользователя.

В приведенной выше команде часть имени хоста установлена ​​на localhost , что означает, что пользователь сможет подключаться к серверу MySQL только с локального хоста (то есть из системы, в которой работает MySQL Server).

Чтобы предоставить доступ с другого хоста, измените часть имени хоста ( localhost ) с IP-адресом удаленного компьютера. Например, чтобы предоставить доступ с компьютера с IP 10.8.0.5 вы должны выполнить:

CREATE USER 'newuser'@'10.8.0.5' IDENTIFIED BY 'user_password';

Чтобы создать пользователя, который может подключаться с любого хоста, используйте подстановочный знак '%' в качестве части хоста:

CREATE USER 'newuser'@'%' IDENTIFIED BY 'user_password';

Предоставление привилегий учетной записи пользователя MySQL

Существует несколько типов привилегий, которые могут быть предоставлены учетной записи пользователя. Вы можете найти полный список привилегий, поддерживаемых MySQL, здесь.

Наиболее часто используемые привилегии:

  • ALL PRIVILEGES - Предоставляет все привилегии учетной записи пользователя. CREATE - учетная запись пользователя может создавать базы данных и таблицы. DROP - учетной записи пользователя разрешено удалять базы данных и таблицы. DELETE - Учетная запись пользователя может удалять строки из определенной таблицы. INSERT - учетной записи пользователя разрешено вставлять строки в определенную таблицу. SELECT - учетной записи пользователя разрешено читать базу данных. UPDATE - Учетная запись пользователя может обновлять строки таблицы.

Чтобы предоставить определенные привилегии учетной записи пользователя, вы можете использовать следующий синтаксис:

GRANT permission1, permission2 ON database_name.table_name TO 'database_user'@'localhost';

Вот некоторые примеры:

  • Предоставьте все привилегии учетной записи пользователя для определенной базы данных:

    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

Чтобы найти привилегии, предоставленные определенной учетной записи пользователя MySQL, используйте оператор SHOW GRANTS :

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

Синтаксис для отзыва одной или нескольких привилегий из учетной записи пользователя практически идентичен при предоставлении привилегий.

Например, чтобы отозвать все привилегии из учетной записи пользователя для определенной базы данных, используйте следующую команду:

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

Удалить существующую учетную запись пользователя MySQL

Чтобы удалить учетную запись пользователя MySQL, используйте оператор DROP USER :

DROP USER 'user'@'localhost'

Команда выше удалит учетную запись пользователя и ее привилегии.

Вывод

Этот учебник охватывает только основы, но он должен быть хорошим началом для тех, кто хочет научиться создавать новые учетные записи пользователей MySQL и предоставлять привилегии.

Мысль Мариадб