Mysql delete user linux

How to Delete or Remove Users MySQL Command line on Linux

To remove or delete user MySQL command line Linux; In this tutorial, you will learn step by step on how to delete or remove user from MySQL database in Linux.

MySQL stores account names in grant tables in the mysql system database using separate columns for the user name and host name parts: The user table contains one row for each account. The User and Host columns store the user name and host name. This table also indicates which global privileges the account has.

To delete a MySQL user is to remove an account and its privileges from all grant tables. Only users with global CREATE USER or DELETE privileges can perform such tasks. In this tutorial, learn how to delete MySQL user accounts using the DROP USER statement.

  • Access to a command line or terminal
  • MySQL or MariaDB installed
  • User with sudo or root privileges

How To Delete or Remove a MySQL User Account on Linux Ubuntu

  • Step 1 – Login as Root user MySQL
  • Step 2 – Find user in MySQL
  • Step 3 – Delete Remove User in MySQL
  • Step 4 – Check MySQL User

Step 1 – Login as Root user MySQL

Installed MySQL and try to access phpmyadmin on the local/server machine with the root user, the command you use is:

In most cases, you will receive the error message Access denied for user ‘root’@’localhost’.

You can enable access for root using one MySQL command.

To be able to log into MySQL as root, first use sudo to modify the root user:

Enter your password at the prompt. A MySQL shell loads.

Step 2 – Find user in MySQL

Execute the following command on terminal to find the exact name of the user you want to remove by running a command that lists users from the MySQL server:

SELECT User, Host FROM mysql.user;

The above command will displays all users.

Step 3 – Delete Remove User in MySQL

Before exeucte the following command, Replace username in the following command with your user:

Step 4 – Check MySQL User

Execute the following command on terminal recheck the user list to verify the user was deleted:

SELECT User, Host FROM mysql.user;

Conclusion

In this tutorial, you have learned how to solve access denied for user ‘root’@’localhost’ (using password yes) mysql phpmyadmin ubuntu 18.04/20.04.

Читайте также:  Отключить блокировку экрана линукс минт

Источник

Как удалить пользователя MySQL

В СУБД MySQL доступно много действий для работы с пользователями. Одно из таких действий — удаление пользователя. Также дополнительно можно узнать какие полномочия присутствуют у пользователя и при необходимости лишить определённых прав.

В данной статье будет описано как удалить пользователя в MySQL в операционной системе Ubuntu 20.04.

Как посмотреть хосты пользователя

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

SELECT user, host FROM mysql.user;

8f1bV55iL+1ywAAAAASUVORK5CYII=

Тип хоста localhost означает что пользователь может входить под своей учетной записью только с локального сервера (на котором установлен MySQL), символ процента % означает что пользователь может подключиться под своей учетной записью удаленно и с любого хоста.

Как отозвать полномочия пользователя MySQL

Для начала необходимо войти в консоль MySQL. Для этого в терминале необходимо ввести следующую команду, где alex имя вашего пользователя:

3DILRfg4f8EzblbbZvVGLMAAAAASUVORK5CYII=

В качестве примера вход в оболочку MySQL был осуществлен под пользователем alex.

Перед удалением пользователя в MySQL бывает полезным посмотреть права пользователя и при необходимости лишить его этих прав. Далее необходимо отобразить права нужного пользователя. Чтобы отобразить права текущего пользователя (который в данный момент подключен к консоли MySQL) можно выполнить одну из перечисленных ниже команд. Результат вывода будет одинаков везде независимо от выбранной команды:

SHOW GRANTS FOR CURRENT_USER;

SHOW GRANTS FOR CURRENT_USER();

6ML7ZXcYNLFWvniYGvXc+f8B2OhLPmT7moUAAAAASUVORK5CYII=

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

SHOW GRANTS FOR ‘alex’@’localhost’;

eqSJpuPnoO4Ceygr79CnnTuJRWVg+2m2fcPm43+WSPsih8HXbBCn3l0FiRy2fCXsyj0botkawZZ4yYDpby2hv8Maz045fiytfX0WdpY4POWD5284VO17ZX7zNX8TmOtKJmRril4DJE7RxSCV1mrMeKndqpq5gtLM8VeKDdp+dbv8H0FiEY9kNEacAAAAASUVORK5CYII=

В приведенном примере были выведены все права пользователя alex. В качестве значений сначала указывается имя пользователя присутствующего на сервере MySQL, а через знак @ указывается тип учетной записи (localhost, %, имя сайта/домена, IP адрес).

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

Например, для того чтобы убрать (отозвать) разрешения на UPDATE и INSERT для пользователя alex, который может подключаться удалённо (%) необходимо выполнить следующий SQL запрос:

REVOKE UPDATE, INSERT ON MyGuests FROM ‘alex’@’%’;

8Bki7z0e0D+2AAAAAASUVORK5CYII=

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

REVOKE ALL ON test_db FROM ‘alex’@’%’;

9VLAehDIcmtgAAAABJRU5ErkJggg==

При выполнении SQL оператора REVOKE подразумевается, что пользователю уже назначены права, которые необходимо отобрать иначе отобразится следующая ошибка:

ERROR 1147 (42000): There is no such grant defined for user ‘alex’ on host ‘%’ on table ‘MyGuests’

mN5I957wa5E8PSFND3wtnimbDDjhQul5v8BHU4+SQSoBwsAAAAASUVORK5CYII=

Как удалить пользователя MySQL

Для удаления пользователя в MySQL необходимо использовать SQL инструкцию DROP. Например, команда для удаления пользователя alex выглядит следующим образом:

F4BwAAAAASUVORK5CYII=

Как удалить подключенного пользователя

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

FOqugU9AVLoAAAAASUVORK5CYII=

В столбце Id будет отображен уникальный номер (ID) подключенного пользователя. Запомните его. Например, для того чтобы завершить сессию пользователя alex с идентификатором 16 необходимо выполнить команду:

Читайте также:  Linux терминал просит пароль

+f8BVnreDXrvoIAAAAAASUVORK5CYII=

Если выполнить команду SHOW PROCESSLIST ещё раз, то можно увидеть что пользователь с ID 16 отсутствует:

0DvBwAAAABJRU5ErkJggg==

После того как сессия пользователя будет завершена, пользователя можно удалить при помощи инструкции DROP. Например:

F4BwAAAAASUVORK5CYII=

Выводы

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

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

How To Remove or Delete a MySQL User Account

It’s essential to have control over who has access to a database.

To delete a MySQL user is to remove an account and its privileges from all grant tables. Only users with global CREATE USER or DELETE privileges can perform such tasks. In this tutorial, learn how to remove MySQL user accounts using the DROP USER statement.

Tutorial on how to remove or delete a MySQL user account.

Deleting a MySQL Account

1. First, connect to the MySQL database as the root user:

If root does not have access to MySQL on your machine, you can use sudo mysql

2. Enter the password when prompted and hit Enter. A MySQL shell loads.

3. Find the exact name of the user you want to remove by running a command that lists users from the MySQL server:

SELECT User, Host FROM mysql.user;

mysql shell user list

4. The output displays all users. Locate the name you want to remove, in our case it is MySQLtest. Replace username in the following command with your user:

5. Recheck the user list to verify the user was deleted.

mysql user list after drop user command

DROP USER Syntax

The basic syntax for the DROP USER statement is:

Remove Multiple MySQL Users

To delete multiple users at the same time, use the same DROP USER syntax, and add users separated by a comma and a space.

DROP USER 'user1'@'localhost', 'user2'@'localhost', 'user3'@'localhost';

Note: If you removed an existing MySQL account and want to create a new one, refer to our article on How to Create MySQL Account and Grant Privileges.

Drop a Connected / Active User

If the user you want to remove from the MySQL database is active at that time, its privileges will be revoked only once the session is closed. After that, the user will not have access to the database.

If you want the DROP USER statement to go into effect immediately, you need to kill the user session and then remove the account.

1. Find the connection ID for the unwanted user. Prompt a list to see all activity processes and their IDs:

mysql show processlist command

2. Locate the Id of the user and add the number to the kill command to kill the process in MySQL:

3. Once the user is no longer active, you can remove it from the MySQL database with:

DROP USER 'username'@'localhost';

In this article, you have learned how to delete one or multiple MySQL user accounts, as well as how to remove active accounts.

For more ways to optimize your MySQL Database, read our MySQL Performance Tuning tutorial.

Читайте также:  Linux gcc stdio h

Источник

How to Delete MySQL Users Accounts?

Using MySQL, users can create multiple accounts to access the database(s) from anywhere, giving them different privileges like modifying, dropping, or creating tables according to their requirements. The problem arises when you are in an organization and one of the employees leaves, so you’ll need to delete their accounts or revoke privileges in certain conditions.

This guide to deleting MySQL User Accounts covers the following aspects.

We’d now explain the points mentioned above in detail.

Step 1: Login as the root User

It is required to log in as the root user because, in the world of MySQL, the root can do almost anything. Execute this command to login as root.

The default password is set as “EMPTY STRING” or blank and if you haven’t set any password, press the “Enter key” to login as root to MySQL Shell.

Step 2: List User Accounts

There could be multiple users whose names are similar, so it is recommended to view a list of users to avoid confusion; this command can be done using MySQL Shell.

> SELECT USER,HOST FROM mysql.user;

As seen in the above image, we’ve displayed the Users and their Host Name (could also be a remote IP Address) so that it is easier to know what user you wish to remove.

Step 3: Delete User Accounts on MySQL

We’ve viewed the user accounts that use MySQL Databases on our server. The “user1” is no longer a member of my organization, so we’ll delete that account using the DROP USER command in this format.

When executed, the above command deletes the “User1” account from MySQL and all the permissions granted by Database Administrator.

The above method only works after the user is logged out of MySQL, which somehow affects privacy.

Logout and Then Delete the User

To overcome that problem, let’s forcefully log out the user and then delete the account. The following command will be executed to find the id of the connection made to the MySQL Database.

The process Id of the “test” user is 12, so to kill it, use this command in MySQL Shell.

When the root kills the process (12) that the “test” user held, then “test” will see the following message when a query is executed in MySQL Shell.

We’ll remove the “test” user from MySQL Server using the drop command in this format.

The root user has successfully dropped the user account of “test” as seen in the above image. To learn more about the above command, use this help command of MySQL in the terminal.

That’s how the MySQL user’s account can be deleted.

Conclusion

Creating and deleting user accounts in MySQL is one of any database administrator’s major responsibilities. However, typical users may also need to do this at some point in their work. This article has elaborated on how to delete user accounts in MySQL on Linux.

Источник

Оцените статью
Adblock
detector