Как я могу увидеть, какой пользователь вошел как в MySQL?

34

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

Как узнать, в каком пользователе я вошел как?

Есть ли способ изменить, какой пользователь я вошел в систему как с выходом из системы?

nelaaro
источник

Ответы:

42

На самом деле, вам нужно использовать две функции

SELECT USER(),CURRENT_USER();

USER () сообщает, как вы пытались пройти аутентификацию в MySQL

CURRENT_USER () сообщает, как вам разрешили проходить аутентификацию в MySQL

Иногда они разные

RolandoMySQLDBA
источник
например. Если вы войдете в MySQL через того, mysql -ulalalaгде lalalaпользователь не существует, вам будет разрешено войти как «анонимный» пользователь MySQL, а именно ''@'localhost'. В этом случае возврат функций будет USER()= lalala@localhostиCURRENT_USER() = @localhost
Dimitry K
2
@DimitryK Когда это произойдет, вы можете запустить, SHOW GRANTS;чтобы увидеть, какие разрешения у вас есть. Даже если вы не видите ничего, кроме USAGEвас, вы все равно должны знать, что определенные тестовые базы данных на 100% доступны для анонимного пользователя. Смотрите мой пост MySQL : Why are there “test” entries in mysql.db?( dba.stackexchange.com/q/13361/877 )
RolandoMySQLDBA
+1 для SHOW GRANTS, странно, что я не наткнулся на это, читая многочисленные уроки Mysql.
Димитрий К
2

Я нашел эту функцию пользователя ()

выберите пользователя (); Покажет вам, какой пользователь вошел в систему.

nelaaro
источник
Эта ссылка все еще работает для вас? Я решил сделать ссылку на кеш гугла из-за поломки mysql -> oracle.
Дорогой
Он работает, у него есть другая интересная функция, а также выберите database (); покажет вам вашу текущую выбранную базу данных.
nelaaro
Это действительно раздражает, мне интересно, почему это не работает для меня. Спасибо.
Дорогой
Нет, отправляет меня на search.oracle.com/search/…
Дорогой
0

Вы можете использовать «статус»:

MariaDB [my_database]> статус

Текущий пользователь: root @ localhost

JohnW.
источник