Получить информацию о пользователе с помощью триггера в MySQL
Как сказано в заголовке, я хотел бы получить некоторую информацию о пользователе, который выполняет оператор SQL в MySQL. Например, если какой-то оператор SQL выполняется пользователем с именем "работа", как я мог получить имя пользователя и хост с триггером, прежде чем он фактически будет выполнен в MySQL.
На самом деле, я просто хочу отслеживать некоторые действия, такие как DELETE, в MySQL. И я не уверен, что binlog может записывать имя пользователя и хост, который выполнил оператор SQL.
2 ответа
user@host
что вы, кажется, ищете, можно получить из USER()
информационная функция.
https://dev.mysql.com/doc/refman/5.6/en/information-functions.html
SELECT * FROM information_schema.PROCESSLIST WHERE USER="someuser";
Теперь вам решать, что вы используете. Напишите задание cron (linux), чтобы сохранить его в файл, или запишите событие MySQL, чтобы ввести его в таблицу MySQL.