Как показать пользователей в MySQL и информацию о пользователях в Linux

mysql Applications

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

Однако есть несколько способов еще больше повысить безопасность сервера MySQL. Один из них - создание пользователей с ограниченными правами доступа к базе данных.

В этом учебном пособии мы расскажем о том, почему следует создавать отдельные учетные записи пользователей MySQL, а также о том, как использовать команду MySQL SHOW USERS на сервере Linux.

Зачем создавать пользователей в MySQL Server?

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

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

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

Как показать пользователей в базе данных MySQL в Linux

В отличие от команд SHOW DATABASES или SHOW TABLES, которые сразу отображают все базы данных или таблицы, команды SHOW USERS в MySQL не существует. Несмотря на отсутствие такой команды, пользователи могут использовать запрос MySQL и получить полный список пользователей данного сервера баз данных MySQL.

Для получения дополнительной информации выполните следующие шаги.

1. Вход в систему от имени пользователя MySQL root

Начните с входа на VPS по протоколу SSH под пользователем root. После этого введите в командную строку MySQL следующую команду:

Затем введите пароль пользователя MySQL root.

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

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

2. Использование запроса MySQL SHOW USERS

Для отображения пользователей MySQL, созданных на сервере баз данных, используйте следующий запрос:

В результате вы увидите список всех пользователей, которые были созданы в MySQL.

Результат запроса MySQL, отображающий всех пользователей, созданных в базе данных MySQL.
Обратите внимание, что среди пользователей могут быть дубликаты. Это связано с тем, что MySQL фильтрует доступ к серверу в зависимости от IP-адреса, с которого он поступает.

Для получения более подробной информации можно также добавить колонку host, используя следующую команду:

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

MySQL-запрос, показывающий всех пользователей вместе с хостами.

3. Просмотр дополнительной информации о пользователях MySQL (опционально)

Если Вам необходима дополнительная информация о пользователях MySQL, то команда поиска может быть расширена с помощью запросов MySQL.

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

MySQL-запрос, выводящий всю возможную информацию из таблицы базы данных MySQL

Однако такой вывод может показаться слишком запутанным. Поэтому мы рекомендуем сузить поиск, используя более конкретные запросы.

Вот некоторые из наиболее популярных вариантов использования:

Предварительный просмотр столбцов таблицы

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

Запрос MySQL для предварительного просмотра столбцов таблицы пользователя.

 

Отображение только уникальных имен пользователей

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

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

 

Истечение срока действия пароля и состояние блокировки учетной записи

Для проверки статуса истечения срока действия пароля и состояния блокировки учетной записи используйте следующий запрос:

MySQL-запрос для отображения состояния истечения срока действия пароля и блокировки учетной записи.

 

Отображение текущего и зарегистрированного пользователей

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

Запрос MySQL для отображения текущего пользователя.

 

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

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

 

Заключение

Администрирование сервера баз данных может быть сложной работой. Поэтому администраторы баз данных должны быть внимательны при создании и администрировании прав доступа пользователей.

Команда MySQL SHOW USERS позволяет администраторам просматривать пользователей MySQL наряду с другой важной информацией.

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

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

Мы надеемся, что данное руководство было полезным для Вас. Если у вас возникли дополнительные вопросы или соображения, сообщите нам об этом в разделе комментариев ниже.

Avatar for Gnostis
Gnostis
Добавить комментарий