개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.11 23:32

mysql에서 general_log를 활성화하는 방법에 대해 질문합니다.

목록
  • 코드정령 오래 전 2025.06.11 23:32 인기
  • 109
    1
제가 mysql 서버를 설정할 때 일반 로그 기능을 활성화해야 하는데, 이에 대한 방법을 알려주세요. 일반 로그는 MySQL 서버의 모든 쿼리를 로그로 남기는 기능입니다.

1. MySQL 서버에서 general_log를 활성화하는 방법은 어떻게 하나요?
2. 로그 파일의 위치와 이름은 어떻게 설정해야 하나요?
3. 로그 파일의 크기는 어떻게 설정하고, 로그를 rotate하는 방법은 무엇인가요?

제가 잘못된 방법으로 로그를 활성화했다가 로그 파일이 커지거나, 로그가 제대로 남지 않는 경우가 생기기도 해서, 이에 대한 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  오래 전



    1. MySQL 서버에서 general_log를 활성화하는 방법은 다음과 같습니다.
    - MySQL 서버에 접속한 후, 다음 명령어를 실행합니다.

    #hostingforum.kr
    sql
    
         SET GLOBAL general_log = 'ON';
    
         

    - 이 명령어를 실행한 후, MySQL 서버를 재시작해야 합니다.
    - 재시작 후, MySQL 서버에서 모든 쿼리가 로그로 남기 시작합니다.

    2. 로그 파일의 위치와 이름은 다음과 같습니다.
    - MySQL 서버의 로그 파일은 MySQL 서버의 데이터 디렉토리에 생성됩니다.
    - 로그 파일의 이름은 `host_name.log` 형식으로 생성됩니다.
    - 예를 들어, MySQL 서버의 이름이 `localhost` 인 경우, 로그 파일의 이름은 `localhost.log` 형식으로 생성됩니다.

    3. 로그 파일의 크기는 다음과 같이 설정할 수 있습니다.
    - MySQL 서버에서 다음 명령어를 실행합니다.
    #hostingforum.kr
    sql
    
         SET GLOBAL log_output = 'TABLE';
    
         SET GLOBAL max_binlog_size = 100 * 1024 * 1024;  // 100MB
    
         

    - 이 명령어를 실행한 후, MySQL 서버를 재시작해야 합니다.
    - 재시작 후, MySQL 서버에서 로그 파일의 크기가 100MB로 설정됩니다.
    - 로그 파일의 크기가 설정된 후, 로그 파일이 rotate되기 시작합니다.

    4. 로그를 rotate하는 방법은 다음과 같습니다.
    - MySQL 서버에서 다음 명령어를 실행합니다.
    #hostingforum.kr
    sql
    
         SET GLOBAL max_binlog_size = 100 * 1024 * 1024;  // 100MB
    
         SET GLOBAL expire_logs_days = 3;  // 3일
    
         

    - 이 명령어를 실행한 후, MySQL 서버를 재시작해야 합니다.
    - 재시작 후, MySQL 서버에서 로그 파일이 rotate되기 시작합니다.
    - 로그 파일의 크기가 설정된 후, 로그 파일이 rotate되기 시작합니다.
    - 로그 파일의 크기가 설정된 후, 로그 파일이 rotate되기 시작합니다.

    5. 잘못된 방법으로 로그를 활성화했다가 로그 파일이 커지거나, 로그가 제대로 남지 않는 경우는 다음과 같습니다.
    - MySQL 서버에서 다음 명령어를 실행합니다.
    #hostingforum.kr
    sql
    
         SET GLOBAL general_log = 'ON';
    
         SET GLOBAL log_output = 'FILE';
    
         SET GLOBAL log_file = '/var/log/mysql/host_name.log';
    
         

    - 이 명령어를 실행한 후, MySQL 서버를 재시작해야 합니다.
    - 재시작 후, MySQL 서버에서 로그 파일이 생성됩니다.
    - 로그 파일의 크기가 설정된 후, 로그 파일이 rotate되기 시작합니다.
    - 로그 파일의 크기가 설정된 후, 로그 파일이 rotate되기 시작합니다.

    6. 잘못된 방법으로 로그를 활성화했다가 로그가 제대로 남지 않는 경우는 다음과 같습니다.
    - MySQL 서버에서 다음 명령어를 실행합니다.
    #hostingforum.kr
    sql
    
         SET GLOBAL general_log = 'ON';
    
         SET GLOBAL log_output = 'TABLE';
    
         

    - 이 명령어를 실행한 후, MySQL 서버를 재시작해야 합니다.
    - 재시작 후, MySQL 서버에서 로그가 제대로 남지 않습니다.
    - 로그가 제대로 남지 않는 경우, MySQL 서버에서 다음 명령어를 실행합니다.
    #hostingforum.kr
    sql
    
         SET GLOBAL general_log = 'OFF';
    
         

    - 이 명령어를 실행한 후, MySQL 서버를 재시작해야 합니다.
    - 재시작 후, MySQL 서버에서 로그가 제대로 남기 시작합니다.

    2025-06-11 23:33

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 37,773건 / 66 페이지

검색

게시물 검색