본문 바로가기
MySql

MySQL Mysql 일반 로그 테이블에서 이전 행 삭제 (CSV가 아닌 MyISAM)

by 베이스 공부 2020. 12. 13.
반응형

mysql.general_log 테이블에서 이전 행을 삭제하고 싶었지만이 오류가 발생했습니다.

#1556 - You can't use locks with log tables.

이것은 내가 실행 한 쿼리입니다.

DELETE FROM `general_log` WHERE `event_time` < "2014-01-25 14:05"

 

해결 방법

 

테이블 이름을 바꾸고 필요에 따라 정리를 수행 한 다음 테이블 이름을 다시 되돌릴 수 있습니다.

예:

SET GLOBAL general_log = 'OFF';
RENAME TABLE general_log TO general_log_temp;
DELETE FROM `general_log_temp` WHERE `event_time` < DATE(NOW());
RENAME TABLE general_log_temp TO general_log;
SET GLOBAL general_log = 'ON';

 

참조 페이지 https://stackoverflow.com/questions/21357177

 

 

반응형

댓글