6.3.13.6 감사 로그 플러그인 옵션 및 시스템 변수
이 섹션에서는 감사 로그 플러그인 작업을 제어하는 명령 옵션 및 시스템 변수에 대해 설명합니다. 시작할 때 지정된 값이 잘못된 경우 플러그인이 제대로 초기화되지 않을 수 있으며, 서버에서로드되지 않습니다. 이 경우 서버에서 다른 감사 로그 설정이 인식되지 않기 때문에 이에 대한 오류 메시지가 생성 될 가능성도 있습니다.
audit_log
플러그인의 활성화를 제어하려면 다음 옵션을 사용합니다.
--audit-log[=
value
]Introduced 5.6.10 Command-Line Format --audit-log[=value]
Permitted Values Type enumeration
Default ON
Valid Values ON
OFF
FORCE
FORCE_PLUS_PERMANENT
audit_log
플러그인을로드하는 방법을 제어합니다. 이것은 감사 로그 플러그인이 사전에INSTALL PLUGIN
에 등록되어 있거나--plugin-load
를 사용하여로드되는 경우에만 지정 가능합니다. 섹션 6.3.12.1 "감사 로그 플러그인 설치" 를 참조하십시오.섹션 5.1.8.1 "플러그인 설치 및 제거" 에 설명 된대로 옵션 값은 플러그인로드 옵션에 가능한 값 중 하나 여야합니다. 예를 들어,
--audit-log=FORCE_PLUS_PERMANENT
플러그인을로드하고 그 서버를 실행할 때 삭제되는 것을 방지하도록 서버에 지시합니다.이 옵션은 MySQL 5.6.10에서 추가되었다.
audit_log
플러그인이 설치되어있는 경우에는 로깅에 대한 제어를 허용하는 여러 시스템 변수가 표시됩니다. 이러한 변수는audit_log
플러그인이 활성화되어있는 경우에만 지정할 수 있습니다.
mysql> SHOW VARIABLES LIKE 'audit_log%';
+-----------------------------+--------------+
| Variable_name | Value |
+-----------------------------+--------------+
| audit_log_buffer_size | 1048576 |
| audit_log_connection_policy | ALL |
| audit_log_current_session | ON |
| audit_log_exclude_accounts | |
| audit_log_file | audit.log |
| audit_log_flush | OFF |
| audit_log_format | OLD |
| audit_log_include_accounts | |
| audit_log_policy | ALL |
| audit_log_rotate_on_size | 0 |
| audit_log_statement_policy | ALL |
| audit_log_strategy | ASYNCHRONOUS |
+-----------------------------+--------------+
이러한 변수 모두 서버 시작시 (일부는 실행시)에 설정할 수 있습니다.
audit_log_buffer_size
Introduced 5.6.10 Command-Line Format --audit_log_buffer_size=value
System Variable Name audit_log_buffer_size
Variable Scope Global Dynamic Variable No Permitted Values (32-bit platforms) Type integer
Default 1048576
Min Value 4096
Max Value 4294967295
Permitted Values (64-bit platforms) Type integer
Default 1048576
Min Value 4096
Max Value 18446744073709547520
이 변수는 MySQL 5.6.10에서 추가되었다.
audit_log_connection_policy
Introduced 5.6.20 Command-Line Format --audit_log_connection_policy=value
System Variable Name audit_log_connection_policy
Variable Scope Global Dynamic Variable Yes Permitted Values Type enumeration
Default ALL
Valid Values ALL
ERRORS
NONE
값 설명 ALL
연결 이벤트의 로그를 기록합니다 ERRORS
실패한 연결 이벤트 로그 만 기록합니다 NONE
연결 이벤트의 로그를 기록하지 않습니다 참고섹션 6.3.12.4 "감사 로그 플러그인의 로깅 제어" 에서 설명한 바와 같이,
audit_log_policy
도 지정되어있는 경우, 서버 시작시audit_log_connection_policy
에 명시 적으로 지정된 값이 재정의 될 수 있습니다 .이 변수는 MySQL 5.6.20에서 추가되었다.
audit_log_current_session
Introduced 5.6.20 System Variable Name audit_log_current_session
Variable Scope Global, Session Dynamic Variable No Permitted Values Type boolean
Default depends on filtering policy
audit_log_include_accounts
및audit_log_exclude_accounts
시스템 변수의 값에 따라 설정됩니다. 감사 로그 플러그인이 세션 값을 사용하여 해당 세션에서 이벤트를 감사할지 여부를 결정합니다. (글로벌 값도 있지만,이 플러그인은 사용되지 않습니다.)이 변수는 MySQL 5.6.20에서 추가되었다.
audit_log_exclude_accounts
Introduced 5.6.20 Command-Line Format --audit_log_exclude_accounts=value
System Variable Name audit_log_exclude_accounts
Variable Scope Global Dynamic Variable Yes Permitted Values Type string
Default NULL
NULL
또는 쉼표로 구분 된 하나 이상의 계정 이름 목록이 포함 된 문자열을 지정하도록하십시오. 자세한 내용은 섹션 6.3.12.4 "감사 로그 플러그인의 로깅 제어" 를 참조하십시오.이 변수는 MySQL 5.6.20에서 추가되었다.
audit_log_file
Introduced 5.6.10 Command-Line Format --audit_log_file=file_name
System Variable Name audit_log_file
Variable Scope Global Dynamic Variable No Permitted Values Type file name
Default audit.log
audit.log
입니다. 파일 이름이 상대 경로 인 경우, 서버는 데이터 디렉토리에 상대적인 경로로 해석합니다. 보안상의 이유로 감사 로그 파일은 MySQL 서버 및 로그를 표시하는 정당한 이유를 가진 사용자 만 액세스 할 수있는 디렉토리에 저장해야합니다.이 변수는 MySQL 5.6.10에서 추가되었다.
audit_log_flush
Introduced 5.6.10 System Variable Name audit_log_flush
Variable Scope Global Dynamic Variable Yes Permitted Values Type boolean
Default OFF
ON
)으로 설정되어있는 경우 감사 로그 플러그인은 로그 파일을 닫았다가 다시 열고 플래시합니다. (이 값은 다른 플래시를 실행하기 위해 다시 사용하기 전에 명시 적으로 해제 할 필요가 없도록OFF
상태로 남아 있습니다.)audit_log_rotate_on_size
가 0 인 경우를 제외하고 이 변수를 사용하여도 효과는 없습니다.이 변수는 MySQL 5.6.10에서 추가되었다.
audit_log_format
Introduced 5.6.14 Command-Line Format --audit_log_format=value
System Variable Name audit_log_format
Variable Scope Global Dynamic Variable No Permitted Values (>= 5.6.14) Type enumeration
Default OLD
Valid Values OLD
NEW
OLD
및NEW
(기본값OLD
)입니다. 각 형식에 대한 자세한 내용은 섹션 6.3.12.3 "감사 로그 파일" 을 참조하십시오.audit_log_format
값을 변경하려면 다음 단계를 사용하여 특정 형식의 로그 항목이 다른 형식의 항목을 포함한 기존 로그 파일에 기록되는 것을 방지합니다.서버를 중지합니다.
현재 감사 로그 파일의 이름을 수동으로 변경합니다.
새로운
audit_log_format
값으로 서버를 다시 시작합니다. 감사 로그 플러그인에서 선택한 형식의 로그 항목을 포함하는 새 로그 파일이 만들어집니다.
이 변수는 MySQL 5.6.14에서 추가되었다.
audit_log_include_accounts
Introduced 5.6.20 Command-Line Format --audit_log_include_accounts=value
System Variable Name audit_log_include_accounts
Variable Scope Global Dynamic Variable Yes Permitted Values Type string
Default NULL
NULL
또는 쉼표로 구분 된 하나 이상의 계정 이름 목록이 포함 된 문자열을 지정하도록하십시오. 자세한 내용은 섹션 6.3.12.4 "감사 로그 플러그인의 로깅 제어" 를 참조하십시오.이 변수는 MySQL 5.6.20에서 추가되었다.
audit_log_policy
Introduced 5.6.10 Command-Line Format --audit_log_policy=value
System Variable (<= 5.6.19) Name audit_log_policy
Variable Scope Global Dynamic Variable Yes System Variable (>= 5.6.20) Name audit_log_policy
Variable Scope Global Dynamic Variable No Permitted Values Type enumeration
Default ALL
Valid Values ALL
LOGINS
QUERIES
NONE
감사 로그 플러그인이 이벤트를 로그 파일에 쓰는 방법을 제어하는 정책입니다. 다음 표는 허용되는 값을 보여줍니다.
Value Description ALL
이벤트 로그를 기록합니다
LOGINS
로그인 이벤트 로그 만 기록합니다
QUERIES
쿼리 이벤트 로그 만 기록합니다 NONE
로그 아무것도 기록하지 않습니다
audit_log_policy
는 서버가 시작될 때만 설정할 수 없습니다. 실행시 읽기 전용 변수입니다. 이것은 더 자세한 로깅 정책을 제어하고 시작할 때 또는 런타임에 설정할 수있는 다른 2 개의 시스템 변수 (audit_log_connection_policy
과audit_log_statement_policy
)이 도입 된 것입니다. 다른 두 변수 대신 시작할 때audit_log_policy
를 계속 사용하면 서버는 그 값을 사용하여 이러한 변수를 설정합니다. 정책 변수 간의 상호 작용에 대한 자세한 내용은 섹션 6.3.12.4 "감사 로그 플러그인의 로깅 제어" 를 참조하십시오.MySQL 5.6.20 이전에는
audit_log_connection_policy
및audit_log_statement_policy
시스템 변수가 존재하지 않습니다.audit_log_policy
는 유일한 정책 제어 변수이며, 서버 시작시 또는 실행시에 설정할 수 있습니다.이 변수는 MySQL 5.6.10에서 추가되었다
audit_log_rotate_on_size
Introduced 5.6.10 Command-Line Format --audit_log_rotate_on_size=N
System Variable Name audit_log_rotate_on_size
Variable Scope Global Dynamic Variable Yes Permitted Values Type integer
Default 0
audit_log_rotate_on_size
값을 0보다 큰 경우, 파일에 쓰기에 의해 그 크기가이 값을 초과하면 감사 로그 플러그인은 로그 파일을 닫았다가 다시 엽니 다. 원래 파일 이름은 타임 스탬프 확장자가 포함되도록 변경됩니다.audit_log_rotate_on_size
값이 0의 경우 플러그인은 크기에 따라 로그를 닫고 다시 열리지 않습니다. 대신audit_log_flush
사용하여 요청에 따라 로그를 닫고 다시 엽니 다. 이 경우 파일을 플래시하기 전에 서버의 외부에서 파일 이름을 변경합니다.감사 로그 파일 회전 및 타임 스탬프의 해석에 대한 자세한 내용은 섹션 6.3.12.4 "감사 로그 플러그인의 로깅 제어" 를 참조하십시오.
이 변수를 4096의 배수가 아닌 값으로 설정하면 가장 가까운 배수로 잘립니다. (따라서 4096 미만의 값으로 설정하면 0 (영)으로 설정 한 결과가되어, 순환은 발생하지 않습니다.)
이 변수는 MySQL 5.6.10에서 추가되었다.
audit_log_statement_policy
Introduced 5.6.20 Command-Line Format --audit_log_statement_policy=value
System Variable Name audit_log_statement_policy
Variable Scope Global Dynamic Variable Yes Permitted Values Type enumeration
Default ALL
Valid Values ALL
ERRORS
NONE
감사 로그 플러그인이 문 이벤트를 로그 파일에 쓰는 방법을 제어하는 정책입니다. 다음 표는 허용되는 값을 보여줍니다.
Value Description ALL
문 이벤트 로그를 기록합니다
ERRORS
실패한 명령문 이벤트 로그 만 기록합니다
NONE
명령문 이벤트 로그를 기록하지 않습니다
참고섹션 6.3.12.4 "감사 로그 플러그인의 로깅 제어" 에서 설명한 바와 같이, audit_log_policy 도 지정되어있는 경우, 서버 시작시 audit_log_statement_policy 에 명시 적으로 지정된 값이 재정의 될 수 있습니다
이 변수는 MySQL 5.6.20에서 추가되었다.
audit_log_strategy
Introduced 5.6.10 Command-Line Format --audit_log_strategy=value
System Variable Name audit_log_strategy
Variable Scope Global Dynamic Variable No Permitted Values Type enumeration
Default ASYNCHRONOUS
Valid Values ASYNCHRONOUS
PERFORMANCE
SEMISYNCHRONOUS
SYNCHRONOUS
감사 로그 플러그인에서 사용되는 로깅 방법. 다음 표에서는 허용되는 값에 대해 설명합니다.
표 6.18 감사 로그의 전략
값 의미 ASYNCHRONOUS
비동기 적으로 기록하고 출력 버퍼의 영역을 기다립니다 PERFORMANCE
비동기 적으로 기록하고 출력 버퍼의 공간이 충분하지 않은 경우 요청을 취소합니다 SEMISYNCHRONOUS
동 기적으로 기록하고 운영 체제에 의한 캐싱을 허용합니다 SYNCHRONOUS
동 기적으로 기록하고 각 요청 후에 sync()
를 호출합니다이 변수는 MySQL 5.6.10에서 추가되었다.