Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL에서 SET으로 초기화된 모든 변수 목록을 확인하는 방법

MySQL에서 SET 명령으로 초기화(설정)된 모든 사용자 변수의 목록을 한눈에 확인하고 싶다면, performance_schema 데이터베이스의 user_variables_by_thread 테이블을 조회하면 됩니다. 이 테이블은 MySQL 5.7 버전부터 제공되며, 각 스레드(세션)별로 설정된 사용자 변수 정보를 담고 있습니다.

기본 문법

select * from performance_schema.user_variables_by_thread;

사용자 변수 설정하기

먼저 SET 명령을 사용해 사용자 변수를 생성해 보겠습니다.

mysql> set @FirstName='John';
Query OK, 0 rows affected (0.00 sec)
mysql> set @LastName='Doe';
Query OK, 0 rows affected (0.00 sec)

설정된 변수 목록 조회하기

이제 위에서 설정한 변수들을 포함하여 현재 스레드에서 초기화된 모든 사용자 변수의 목록을 조회하는 쿼리는 다음과 같습니다.

mysql> select * from performance_schema.user_variables_by_thread;

실행 결과

+-----------+---------------+----------------+
| THREAD_ID | VARIABLE_NAME | VARIABLE_VALUE |
+-----------+---------------+----------------+
|       120 | TotalAmount   |           5000 |
|       120 | FirstName     |           John |
|       120 | lName         |          Smith |
|       120 | fName         |           Adam |
|       120 | LastName      |            Doe |
+-----------+---------------+----------------+
5 rows in set (0.00 sec)

결과 해석

조회 결과는 다음 세 개의 컬럼으로 구성됩니다.

  • THREAD_ID: 해당 변수가 설정된 스레드(세션)의 ID
  • VARIABLE_NAME: 사용자 변수의 이름 (@ 기호는 제외됨)
  • VARIABLE_VALUE: 변수에 저장된 값

출력 결과를 보면 이전에 설정했던 @FirstName@LastName 변수뿐만 아니라, 같은 세션에서 설정된 다른 변수들(TotalAmount, lName, fName)까지 모두 함께 표시되는 것을 확인할 수 있습니다. 참고로 사용자 변수는 세션 단위로 관리되므로, 자신의 연결에서 설정한 변수만 조회됩니다.