mysql пользователь последний логин / дата доступа время

В ходе аудита я собираюсь удалить несколько пользователей MySQL. Перед удалением хочу проверить, когда последний раз эти пользователи обращались к серверу базы данных. Я хочу знать, хранится ли у нас эта информация в базах данных information_schema или mysql. Если нет, то как мы можем этого достичь?

1 ответ

Решение

Вы можете посмотреть в общем журнале любые неудачные попытки подключения к MySQL, однако из коробки MySQL, как правило, не регистрирует успешные подключения к БД. Это может стать очень, очень большим журналом, и эта деятельность может быстро перегрузить подсистему ввода-вывода и вызвать проблемы для БД.

Вы можете настроить этот вид регистрации, однако это приведет к большому количеству данных! посмотрите на этот пост в DBA Exchange: https://dba.stackexchange.com/questions/668/audit-logins-on-mysql-database

Если вы используете сервер БД, который принадлежит вам и только вам, вы сможете это сделать. Если у вас есть вещь типа DBaaS, мультитенантные системы БД умрут, регистрируя каждое соединение. Это не может быть возможно?

Вы также можете найти некоторые шаги по включению отслеживания пользователей в MySQL в блоге Percona: https://www.percona.com/blog/2012/12/28/auditing-login-attempts-in-mysql/

Другие вопросы по тегам