mysql:哇?

mysql:哇?,mysql,Mysql,mysql中是否有类似whoami的函数 我正在从远程主机连接到mysql命令行。我不确定我的ip地址是否解析为域名。我想看看像这样的东西 mysql> whoami; +----------------------------------+ | User | Host | +----------------------------------+ | username | resolved.hostname.com | +-------------

mysql中是否有类似whoami的函数

我正在从远程主机连接到mysql命令行。我不确定我的ip地址是否解析为域名。我想看看像这样的东西

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

只要做一个

select user,host from mysql.user;

应向您显示所需内容。

您可以使用
当前用户
用户
功能,如下所示:

SELECT CURRENT_USER();

SELECT USER();
CURRENT\u USER
显示您被认证为谁,而
USER
显示您试图认证为谁


有关更多信息,请参阅。

如果您使用的是
mysql
命令行实用程序,请尝试
\s
命令:

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
.........

接得好,你当然是对的。答案现在已更新。
用户
何时会与当前用户不同?似乎如果它们不同,那么您必须通过失败的身份验证,在这种情况下,您首先会如何发出该命令?有几个案例,由MySQL手册在答案中的链接中记录。虽然您指定了一个用户,但最终可能会被认证为匿名用户,在这种情况下,
user()
将返回您认证为的内容,而
CURRENT\u user()将返回一个匿名帐户(即空用户名)。此外,在存储过程中,
CURRENT_USER()
将返回创建SP的用户,或者如果使用
SQL安全调用程序
特性定义,则返回调用程序。在触发器和事件中,
CURRENT_USER()
始终返回创建对象的用户。
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
.........