MySQL 로그의 errorlog

3125 단어
MySQL 로그 유형 소개
MySQL 로그는 오류 로그(error log), 쿼리 로그(query log), 바이너리 로그(binary log) 등 크게 세 가지로 나눌 수 있습니다.
  • 쿼리 로그(query log): 일반적으로 쿼리 로그는 일반 쿼리 로그(general query log)와 느린 쿼리 로그(slow query log) 두 가지로 나눌 수 있다.그 중에서 유니버설 조회 로그는 각 클라이언트가 연결할 때의 관련 정보와 데이터베이스에서 실행되는 SQL 문장에 사용할 수 있다.느린 조회 로그는 SQL 문장을 기록합니다. 미리 설정된long 을 초과했습니다.query_time의 문장은 데이터량이 비교적 많은 상황에서 느린 조회 로그에서 어떤 문장이 최적화되어야 하는지 볼 수 있다.
  • 바이너리 로그(binary log): 간단하게 말하면 바이너리 로그는 MySQL 업데이트에 대한 작업을 기록하는데 주요 목적은 가능한 한 데이터베이스를 데이터베이스 고장점으로 복원하는 것이다. 왜냐하면 바이너리 로그는 백업 후 진행된 모든 업데이트를 포함하기 때문이다.

  • 세 가지 로그는 각각 다른 작용을 하는 동시에 서로 다른 방법으로 설정해야 한다. 여기서 일반적인 error log의 설정 방법을 먼저 말하고 다른 두 가지는 나중에 보충한다.
    error_log
    Oracle의 alert와 비슷하지만 MySQL의 error log는 오류 정보를 기록하는 log에 사용되지만 error가 기록하는 것은 오류 정보뿐만 아니라 서비스 프로세스에 대한 오류 정보도 기록됩니다(critical 레벨).mysqld 프로세스가 일부 테이블을 자동으로 검사하거나 복구해야 하는 것을 발견하면, 이 로그에 관련 정보를 던집니다.
    구성 방법
    1. 프로필/etc/my.cnf을 찾으면 find / -type f -name 'my.cnf'을 찾지 못하면 전역적으로 찾으면 된다.
    2. 오류 로그 파라미터를 설정 파일에 쓰기
    [mysqld_safe]
    log-error=/var/lib/mysql/mysql.err
    

    3. 다른 방법인 MySQL은 명령줄이 시작될 때 로그의 마운트 파라미터--log-output를 추가할 수 있다. 그 중에서 --log-output는 로그 파일의 출력 방식을 정하는 세 가지 선택할 수 있는 파라미터가 있다.
  • TABLE: 데이터베이스 테이블에 로그 기록
  • FILE: 로그를 파일에 기록
  • NONE: 기록되지 않음
  • 예를 들다.
  • 오류 로그를 사용하고 데이터베이스 테이블과 로그 파일에 로그 파일을 기록합니다. --log-output=TABLE,FILE --error_log
  • 느린 조회 로그와 일반 조회 로그를 사용하고 로그를 표에 기록합니다: --log-output=TABLE --general_log --slow_query_log
  • 느린 조회 로그를 사용하여 로그 파일에 기록하고 출력 경로를 설정합니다. --log-output=FILE --slow_query_log --slow_query_log_file=/var/lib/mysql/- mysql_slow.log
  • 설정이 완료되면 보기를 시작합니다.
    mysql> show variables like 'log_error';
    +---------------+---------------------+
    | Variable_name | Value               |
    +---------------+---------------------+
    | log_error     | /var/log/mysqld.log |
    +---------------+---------------------+
    1 row in set (0.00 sec)
    
    [root@localhost mysql]# tailf /var/log/mysqld.log
    2017-08-07T12:32:54.258884Z 0 [Note] IPv6 is available.
    2017-08-07T12:32:54.258892Z 0 [Note]   - '::' resolves to '::';
    2017-08-07T12:32:54.258908Z 0 [Note] Server socket created on IP: '::'.
    2017-08-07T12:32:54.259622Z 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
    2017-08-07T12:32:54.260814Z 0 [Note] InnoDB: Buffer pool(s) load completed at 170807  8:32:54
    2017-08-07T12:32:54.266749Z 0 [Note] /usr/sbin/mysqld: ready for connections.
    Version: '5.7.19'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  MySQL Community Server (GPL)
    2017-08-07T12:32:54.266772Z 0 [Note] Executing 'SELECT * FROM INFORMATION_SCHEMA.TABLES;' to get a list of tables using the deprecated partition engine. You may use the startup option '--disable-partition-engine-check' to skip this check. 
    2017-08-07T12:32:54.266774Z 0 [Note] Beginning of list of non-natively partitioned tables
    2017-08-07T12:32:54.318211Z 0 [Note] End of list of non-natively partitioned tables
    
    

    좋은 웹페이지 즐겨찾기