mysql: whoami?

Mysql

Mysql Problem Overview


Is there a whoami-like function in mysql?

I'm connecting to the mysql command line from a remote host. I'm not sure if my ip address is resolving to a domain name or not. I would like to see something like

mysql> whoami;
+----------------------------------+
| User     | Host                  |
+----------------------------------+
| username | resolved.hostname.com |
+----------------------------------+
1 row in set (0.00 sec)

or

mysql> whoami;
+------------------------+
| User     | Host        |
+------------------------+
| username | 22.66.88.44 |
+------------------------+
1 row in set (0.00 sec)

Mysql Solutions


Solution 1 - Mysql

You can use the CURRENT_USER and USER functions as follows:

SELECT CURRENT_USER();

SELECT USER();

CURRENT_USER shows who you are authenticated as, while USER shows who you tried to authenticate as.

See the MySQL manual for more information.

Solution 2 - Mysql

If you are using mysql command line utility then try \s command:

mysql> \s
--------------
mysql  Ver 14.12 Distrib 5.0.67, for suse-linux-gnu (i686) using readline 5.2

Connection id:          519
Current database:
Current user:           admin@localhost
.........
Server version:         5.0.67 SUSE MySQL RPM
.........

Solution 3 - Mysql

Just do a...

select user,host from mysql.user;

Should show you what you want.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questionuser151841View Question on Stackoverflow
Solution 1 - MysqlHåvard SView Answer on Stackoverflow
Solution 2 - MysqlIvan NevostruevView Answer on Stackoverflow
Solution 3 - MysqlRobView Answer on Stackoverflow