¿Hay una función tipo whoami
en mysql?mysql: whoami?
Me estoy conectando a la línea de comandos mysql desde un host remoto. No estoy seguro si mi dirección IP se está resolviendo con un nombre de dominio o no. Me gustaría ver algo como
mysql> whoami;
+----------------------------------+
| User | Host |
+----------------------------------+
| username | resolved.hostname.com |
+----------------------------------+
1 row in set (0.00 sec)
o
mysql> whoami;
+------------------------+
| User | Host |
+------------------------+
| username | 22.66.88.44 |
+------------------------+
1 row in set (0.00 sec)
Buena captura, y tienes razón, por supuesto. La respuesta se actualiza ahora. –
¿Cuándo 'USER' alguna vez sería diferente de' CURRENT_USER'? Parece que si fueran diferentes, habría tenido que haber fallado la autenticación, que en ese caso, ¿cómo se emitiría el comando en primer lugar? – user151841
Hay varios casos, documentados por el manual de MySQL en el enlace en la respuesta. Podría terminar siendo autenticado como un usuario anónimo aunque haya especificado un usuario, en cuyo caso 'USER()' devolverá lo que autenticó mientras que 'CURRENT_USER()' devolverá una cuenta anónima (es decir, nombre de usuario vacío). Además, dentro de los procedimientos almacenados, 'CURRENT_USER()' devolverá al usuario que creó el SP, o el invocador si se define con una característica 'SQL SECURITY INVOCER'. En desencadenantes y eventos, 'CURRENT_USER()' siempre devuelve el usuario que creó el objeto. –