Spec-Zone.ru › MySQL 5.7

6.2.15 Блокировка учетных записей

MySQL поддерживает блокировку и разблокировку учетных записей пользователей, используя ключевые слова ACCOUNT LOCK и ACCOUNT UNLOCK для CREATE USER и ALTER USER инструкций:

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

    Если плагин validate_password включен, он не позволяет создавать учетную запись без пароля, даже если учетная запись заблокирована. См. Раздел 6.4.3, «Плагин проверки паролей».

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

Состояние блокировки учетной записи записывается в столбец account_locked таблицы системы mysql.user. Результат выполнения SHOW CREATE USER показывает, заблокирована или разблокирована учетная запись.

Если клиент пытается подключиться к заблокированной учетной записи, попытка завершается неудачно. Сервер увеличивает переменную состояния Locked_connects, которая указывает количество попыток подключения к заблокированной учетной записи, возвращает ошибку и записывает сообщение в журнал ошибок:

Access denied for user 'user_name'@'host_name'.
Account is locked.

Блокировка учетной записи не влияет на возможность подключения с использованием прокси-пользователя, который принимает идентификацию заблокированной учетной записи. Она также не влияет на возможность выполнения хранимых процедур или представлений, имеющих атрибут DEFINER, указывающий на заблокированную учетную запись. То есть, возможность использования прокси-учета или хранимых процедур или представлений не зависит от блокировки учетной записи.

Возможность блокировки учетных записей зависит от наличия столбца account_locked в таблице системы mysql.user. Для обновлений с версий MySQL, более ранних, чем 5.7.6, выполните процедуру обновления MySQL, чтобы убедиться, что этот столбец существует. См. Раздел 2.10, «Обновление MySQL». Для не обновленных установок, у которых нет столбца account_locked, сервер обрабатывает все учетные записи как разблокированные, и использование ключевых слов ACCOUNT LOCK или ACCOUNT UNLOCK приведет к ошибке.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/account-locking.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API