MYSQL 로그 남기도록 설정하기
MYSQL 로그 남기도록 설정하기
1. MYSQL에 로그 기록 방법
일반로그를 TABLE에 남기도록 설정.
테이블명은 mysql.general_log
SET GLOBAL general_log='ON'; SET GLOBAL slow_query_log='OFF'; //선택사항 long_query_time 값을 참조하여 쿼리 기록 SET GLOBAL log_output='TABLE'; //TABLE에 로그를 남긴다. (FILE, TABLE, NONE)
2. 활용 방법
MYSQL은 MSSQL과 다르게 general_log를 ON시키기 전에는 사용자 접속
로그를 확인할 수 없다.
.general_log를 ON시키면 Access denied된 사용자를 조회가 가능하다.
MYSQL관리자는 해당 로그를 분석하여 무차별 대입공격 여부를 파악이 가능하다.
select * from mysql.general_log where command_type='connect' and argument like 'Access denied%'
3. 로그 안남기기
SET GLOBAL general_log='OFF';
4. 로그 테이블 변경하기
로그의 양이 많아지면 테이블 내용을 관리하기가 수월하지 않다.
아래의 명령어로 로그 테이블을 교체한다.
create table temp_general_log like general_log; rename table general_log to old_general_log, temp_general_log to general_log;
'DB > MYSQL' 카테고리의 다른 글
mysql 일반 유저 계정에서 information_schema 숨기기가 가능한가? (0) | 2016.07.30 |
---|---|
MYSQL JDBC를 이용한 DB, 사용자 자동 생성 (0) | 2016.06.05 |
MYSQL 사용자 등록 쿼리 (0) | 2016.06.05 |
MYSQL 튜닝 (0) | 2016.06.05 |
MYSQL DB별 용량 제한 방법 (0) | 2016.06.05 |