이 글은 주로 MYSQL 로그와 백업 및 복원 문제를 자세히 소개하고 있습니다. 관심 있는 친구들이 참고하면 도움이 될 것입니다.
이 글에서는 참고용으로 MYSQL 로그와 백업 및 복원을 공유합니다. 구체적인 내용은 다음과 같습니다
1. 오류 로그
데이터베이스에 장애가 발생하여 사용할 수 없는 경우 즉시 로그를 확인하세요.
1. 서버 시작 및 종료 시 정보
2. 서버 운영 시 오류 정보
로그 저장 경로는
로그 파일 이름 형식:host_name.err
2. 바이너리 로그
BINLOG라고도 하며 쿼리 문을 제외한 모든 DDL 문과 DML 문을 기록합니다. 이 로그는 매우 중요할 뿐만 아니라 개발자로서 이 로그도 좋아합니다. 정의에서 알 수 있듯이 이 로그에는 테이블 구조와 테이블 데이터가 변경되는 모든 이벤트가 기록되므로, 실수로 데이터가 삭제되거나 기타 이유로 손실된 경우 이 로그를 통해 데이터를 복구할 수 있습니다. 멋지다고 생각하지 않나요?
로그 저장 경로: 오류 로그와 동일한 디렉터리
이름 지정 방법: 기본 방법은 호스트 이름-bin + 숫자입니다.
Mysql은 로그를 시작하거나 플러시할 때마다 새로운 binlog를 생성하며 숫자는 다음부터 증가합니다. 1. 단일 로그가 특정 크기에 도달하면 새 파일도 생성됩니다.
1. 기록 binlog 스위치를 켜세요.
myslq 설치 디렉터리에 my.ini
innodb_buffer_pool_size=107M # Size of each log file in a log group. You should set the combined size # of log files to about 25%-100% of your buffer pool size to avoid # unneeded buffer pool flush activity on log file overwrite. However, # note that a larger logfile size will increase the time needed for the # recovery process. innodb_log_file_size=54M # Number of threads allowed inside the InnoDB kernel. The optimal value # depends highly on the application, hardware as well as the OS # scheduler properties. A too high value may lead to thread thrashing. innodb_thread_concurrency=10 log-bin=mysql-bin
이라는 구성 파일이 있습니다. 여기서 log-bin은 스위치가 켜져 있다는 의미입니다. on이고 mysql-bin은 로그 이름의 접두사입니다.
2.BINLOG 보는 방법
바이너리 파일이기 때문에 에러 로그처럼 직접 볼 수는 없습니다. mysqlbinlog
3. 시간별 BINLOG 보기
시간별로 쿼리할 때 주의할 점은 시작-날짜 시간은 닫힌 간격이고 중지-날짜 시간은 열린 간격이므로 쿼리해야 하는 경우 하루 종일 로그를 기록하려면 다음과 같이 정의해야 합니다.
--start-datetime="2017/07/12 00:00:00" --stop-datetime="2017/07/13 00:00:00": 이 쿼리의 시간 범위는 7/12 00:00:00 - 7/12 24:59:59
3입니다. 데이터 백업
데이터 백업은 실제로 msyql에서 제공하는 mysqldump 도구를 사용하여 데이터를 백업하는 것입니다. 지정된 디렉토리의 지정된 파일로.
1. 지정된 데이터베이스 또는 데이터베이스의 일부 테이블을 백업합니다.
mysqldump [옵션] db_name [테이블_이름]
2. 하나 이상의 지정된 데이터베이스를 백업합니다.
mysqldump [옵션] --database db_name1 db_name2
3 . 모든 데이터베이스 백업
mysqldump [옵션] -all -databases
포트 3306을 사용하는 데이터베이스 인스턴스의 wd_msg 데이터베이스에 있는 테이블 구조와 테이블 데이터를 cd.sql 파일
cd로 내보냅니다.
이 파일에는 쿼리 관련 작업을 제외한 DML 문과 DDL 문이 기록됩니다. 데이터 복구 중에 이러한 명령문을 하나씩 실행하여 데이터 복원을 완료할 수 있습니다.
4. 데이터 복구
테이블을 삭제하고 방금 내보낸 데이터를 다시 가져옵니다.
다음 시나리오는 동일한 서버에서 포트 3307을 사용하여 다른 mysql 인스턴스를 복원하는 것입니다.
Mysql 백업 및 복원에는 다양한 시나리오에 대한 다양한 옵션이 있습니다. 이는 나중에 소개되는 개념 중 하나일 뿐입니다.
관련 권장 사항:
MySQL 로깅 시스템의 세부 사항을 설명하는 샘플 코드 공유
위 내용은 MYSQL 로그와 백업 및 복원에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!