mysql 로그 파일의 기능: 1. 물리적 데이터 페이지의 수정 정보를 기록할 수 있습니다. 2. 데이터를 트랜잭션 이전 상태로 논리적으로 복원할 수 있습니다. 3. 바이너리 파일 형식으로 데이터베이스에 작업을 기록할 수 있습니다. 5. 메인 서버 등의 바이너리 파일에서 이벤트를 가져올 수 있습니다.
권장: "mysql tutorial"
MySQL 로그 파일은 다시 실행 로그(redo 로그), 롤백 로그(실행 취소 로그), 바이너리 로그(binlog), 오류 로그(errorlog)로 나눌 수 있습니다. ), 느린 쿼리 로그(느린 쿼리 로그), 일반 쿼리 로그(일반 로그), 릴레이 로그(릴레이 로그)입니다. 다음 기사에서는 이러한 MySQL 로그 파일에 대해 간략하게 소개합니다. 이것이 도움이 되기를 바랍니다.
1. 리두 로그(redo log)
리두 로그는 물리적 데이터 페이지의 수정 정보를 기록하는 물리적 형식의 로그로, 리두 로그 파일에 순차적으로 기록됩니다. .
Redo 로그는 트랜잭션 내구성을 보장합니다. 이는 장애 발생 시 디스크에 더티 페이지가 기록되는 것을 방지하기 위해 mysql 서비스가 다시 시작될 때 redo 로그를 기반으로 redo를 수행하여 트랜잭션 내구성을 확보합니다.
2. 롤백 로그(undo log)
롤백 로그는 undo가 실행될 때 물리적 상태가 아닌 논리적으로만 트랜잭션 이전 상태로 복원되는 로그입니다. 작업은 리두 로그와 다른 페이지에서 구현됩니다.
롤백 로그는 트랜잭션 이전의 데이터 버전을 저장하며 이를 롤백에 사용할 수 있습니다. 또한 다중 버전 동시 제어 읽기(MVCC), 즉 비잠금 읽기를 제공할 수도 있습니다
3. (binlog )
바이너리 로그는 논리적 형식의 로그로, 데이터베이스에서의 작업을 바이너리 파일 형태로 기록하지만 쿼리문은 기록하지 않습니다. 단순히 실행된 트랜잭션의 sql 문이라고 생각하면 되지만 sql 문처럼 단순하지는 않지만 실행된 sql 문에 대한 반대 정보(추가, 삭제, 수정)가 포함되어 있어 삭제가 해당됩니다. 자기 자신을 삭제하고 역방향 삽입 업데이트는 업데이트 실행 전과 후의 버전 정보에 해당합니다. 삽입은 삭제 및 삽입 자체의 정보에 해당합니다.
바이너리 로그를 복제에 사용할 수 있습니다. 마스터-슬레이브 복제에서 슬레이브 라이브러리는 데이터베이스의 특정 시점 복원에 사용되는 마스터-슬레이브 동기화를 달성하기 위해 마스터 라이브러리의 binlog를 사용합니다.
4. 오류 로그(errorlog)
오류 로그에는 mysqld의 시작과 중지뿐 아니라 서버 작동 중에 발생하는 오류에 대한 정보도 기록됩니다. 기본적으로 시스템의 오류 로깅 기능은 꺼져 있으며 오류 메시지는 표준 오류 출력으로 출력됩니다.
5. 느린 쿼리 로그(느린 쿼리 로그)
느린 로그는 실행 시간이 너무 오래 걸리고 인덱스를 사용하지 않는 쿼리 문을 기록하며 선택, 업데이트, 삭제 및 삽입 문에 대한 오류를 보고합니다. 성공적으로 실행된 명령문만 기록합니다.
6. 일반 쿼리 로그(일반 로그)
이러한 쿼리 또는 명령이 올바른지 또는 구문 오류가 포함되어 있는지에 관계없이 일반 로그는 서버에서 수신한 모든 쿼리 또는 명령을 기록합니다. 레코드는 {Time, Id, Command, Argument}입니다. 바로 mysql 서버는 지속적으로 로그를 기록해야 하기 때문에 일반 로그를 켜면 시스템 오버헤드가 많이 발생하게 된다. 따라서 MySQL은 기본적으로 일반 로그를 해제합니다.
7. 릴레이 로그(relay log)
릴레이 로그는 바이너리와 유사하며 복제 아키텍처에서 사용할 수 있으며 슬레이브 서버는 마스터 서버의 바이너리 파일에서 이벤트를 가져오는 데 사용됩니다.
설명:
리두 로그와 롤백 로그는 트랜잭션 작업과 밀접한 관련이 있으며, 바이너리 로그도 트랜잭션 작업과 관련이 있습니다. 이 세 가지 유형의 로그는 MySQL의 트랜잭션 작업을 이해하는 데 매우 중요합니다.
위 내용은 mysql 로그 파일의 용도는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!