[mysql] mysql에서 현재 사용자 이름을 아는 방법이 있습니까?

mysql 쿼리가 쿼리를 실행하는 사용자의 사용자 이름을 반환하는 방법이 있는지 알고 싶습니다.

이것이 가능한가?



답변

CURRENT_USER()기능을 사용해보십시오 . MySQL이 클라이언트 연결을 인증하는 데 사용한 사용자 이름을 반환합니다. 귀하의 권한을 결정하는 것은이 사용자 이름입니다.

이것은 클라이언트가 MySQL로 보낸 사용자 이름과 다를 수 있습니다 (예를 들어, MySQL은 사용자 이름을 보냈더라도 클라이언트를 인증하기 위해 익명 계정을 사용할 수 있습니다). 연결할 때 클라이언트가 MySQL로 보낸 사용자 이름을 원한다면 USER()대신 함수를 사용하십시오 .

이 값은 서버에 연결할 때 지정한 사용자 이름과 연결 한 클라이언트 호스트를 나타냅니다. 값은 CURRENT_USER ()의 값과 다를 수 있습니다.

http://dev.mysql.com/doc/refman/5.0/en/information-functions.html#function_current-user


답변

둘 중 하나를 실행하십시오

SELECT USER();

또는

SELECT CURRENT_USER();

때때로 다를 수 있습니다. USER () 는 인증을 시도한 로그인을 반환하고 CURRENT_USER () 는 실제로 인증이 허용 된 방법을 반환합니다.


답변

이 쿼리를 사용하십시오.

SELECT USER();

또는

SELECT CURRENT_USER;


답변

당신이 사용할 수있는:

SELECT USER();

또는

SELECT CURRENT_USER();

자세한 내용은 http://dev.mysql.com/doc/refman/5.0/en/information-functions.html#function_current-user


답변

데이터베이스를 사용중인 현재 사용자를 인쇄하려면

select user();

또는

select current_user();


답변

다음을 사용할 수도 있습니다. mysql> select user, host from mysql.user;

+---------------+-------------------------------+
| user          | host                          |
+---------------+-------------------------------+
| fkernel       | %                             |
| nagios        | %                             |
| readonly      | %                             |
| replicant     | %                             |
| reporting     | %                             |
| reporting_ro  | %                             |
| nagios        | xx.xx.xx.xx                 |
| haproxy_root  | xx.xx.xx.xx
| root          | 127.0.0.1                     |
| nagios        | localhost                     |
| root          | localhost                     |
+---------------+-------------------------------+


답변

MySQL의 CURRENT_USER () 함수로 현재 사용자 이름을 찾을 수 있습니다.

예 :
SELECT CURRENT_USER();

그러나 CURRENT_USER()항상 로그인 한 사용자를 반환하지는 않습니다. 따라서 로그인 한 사용자를 원할 경우 SESSION_USER()대신 사용하십시오.