>  기사  >  데이터 베이스  >  MySQL의 로그와 백업, 복원을 위한 그래픽 코드에 대한 자세한 설명

MySQL의 로그와 백업, 복원을 위한 그래픽 코드에 대한 자세한 설명

黄舟
黄舟원래의
2017-07-21 16:34:041166검색

이 글은 주로 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의 로그와 백업, 복원을 위한 그래픽 코드에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.