MySQL 데이터베이스의 자동 백업 및 복구 데이터베이스의 파괴

출처: 인터넷
작성자: 사용자
키워드: 웹 프로그래밍 MySQL 자습서

I. 머리말:

데이터베이스 서버를 설정 하 고, 우선 우리가 할 필요가 되지 않습니다 고려해 MySQL 사용이 가능한 프로그램이이 데이터베이스를 지 원하는 서버에서 실행 하는 데이터베이스 데이터의 손실을 최소화 손상 된 후 마지막 정상 상태로 복구 하는 방법.

또는, 그냥 데이터베이스 서버의 설립 수 있습니다만 무엇을 할 수, 그것은 뭔가 할 수 의미 하지는 않습니다 안정. 효율성과 재해 복구의 포괄 또한 서버 시스템에 대 한 특히 시스템 안정성의 유사 요소입니다.

이 섹션을 데이터베이스 손상 되었습니다 후 자동 데이터베이스 백업 및 복구에 대 한 방법을 설명 합니다. 우리가 여기, mysqlhotcopy를 사용 하 여 데이터베이스 백업을 자동화 하는 쉘 스크립트를 정의 하 고 전체 데이터 자동 백업 및 데이터 복구 프로세스는 쉘에 따라.

데이터베이스 백업 설정 하는 데 필요한 조건

[1] 설정 자동 백업 스크립트

여기, 우리의 실제 요구 사항에 맞게 데이터베이스 백업 및 복구에 대 한 순서, 일관 된 쉘 스크립트 전체 백업 과정을 자동화 하는 데 사용 됩니다.

[Root@centos ~] # 6 mysql backup.sh← 설정 데이터베이스 자동 백업 스크립트를 다음과 같습니다:





#! / 빈/bash





경로 = / usr/지방/sbin: / usr/빈: 빈
/




#
백업 디렉터리

Backdir = / 백업/mysql





# MySQL
의 암호

rootpass = * * * 여기, MySQL 루트 암호
별표를 바꿉니다




# 리 메이크 백업
의 디렉토리

RM-RF $BACKDIR


mkdir-p $BACKDIR





#는 데이터베이스 이름
를 얻을

dblist = ' Ls-p/var/lib/mysql | grep / | tr-d /'





# 백업 데이터베이스


$DBLIST
에서 dbname에 대 한




mysqlhotcopy $dbname-u 루트-p $ROOTPASS $BACKDIR | 로 거-t mysqlhotcopy


완료

[2] 데이터베이스 자동 백업 스크립트 실행

[Root@centos ~] # chmod mysql backup.sh 변경 스크립트 속성 그것만 루트 사용자
에 의해 실행 될 수 있도록

[Root@centos ~]#./mysql-backup.sh 스크립트를 실행된


[Root@centos ~] # ls-l/백업/mysql/확인 백업이 성공


총 8


drwxr-x---2 mysql mysql 4096 1 년 9 월 16시 54분 MySQL는 성공적으로 백업/백업/mysql 디렉토리

[3] 매일 자동으로 실행 하는 데이터베이스 백업 스크립트 만들기

[root@sample ~] # crontab-e←는 규칙을 편집 하는 자동으로 (당시 편집 창이 나타납니다, VI로 작업)


* * * */root/mysql-backup.sh 파일에이 줄을 추가 하 고 모든 하루

아침에는 데이터베이스 백업 3 시 확인

자동 백업 (백업 복구의 방법)의 정상 작동을 테스트

여기, 문제 후 복구 방법을 소개 하는 실제 작업 과정을 통해 발생 합니다.

[1] 복구 방법은 데이터베이스 삭제 될 때

먼저, 테스트 데이터베이스를 설정 합니다.

[root@centos ~] # mysql-u 루트-p← 루트
와 MySQL 서버에 로그온

입력 암호: ← MySQL 루트 암호
입력

MySQL 모니터에 오신걸 환영. 명령 끝에 또는 g.


당신의 MySQL 연결 ID는 서버 버전: 4.1.20
8




유형 '도움' 또는 'h'에 대 한 도움말. 'C'는 버퍼를 입력 합니다.





mysql > 데이터베이스 만들기 테스트; ←는
테스트 테스트 데이터베이스 만들기

쿼리 확인, 1 행의 영향을 (0.00 초)





mysql > test←를 사용 하 여이 데이터베이스
에 연결

데이터베이스 변경





mysql > 테이블 만들기 테스트 (num int, 이름 varchar (50)); ←는 데이터베이스
에 테이블을 만들려면

OK 검색어, 0 행 (0.07 초)의 영향





mysql > 삽입 테스트 값 (1, ' 안녕하세요, centos'); ←가이 테이블에 삽입 한 값 (여기에 "안녕하세요, centos" 걸릴 예)


쿼리 확인, 1 행의 영향을 받는 (0.02 초)





Mysql > 선택 * 테스트; ←는 데이터베이스
의 내용을 볼합니다

+------+-----------------+


| num | 이름 |


+------+-----------------+


| 1 |  안녕하세요, centos | ← 그냥 테이블
에 삽입 되는 값의 존재 확인

+------+------------------+

세트 (0.01 초)
에서
1 행




mysql > exit← 종료 MySQL 서버


안녕
관련 문서

연락처

이 페이지의 내용은 인터넷에서 가져온 것이므로 Alibaba Cloud의 공식 의견이 아닙니다.이 페이지에서 언급 된 제품 및 서비스는 Alibaba Cloud와는 관련이 없으므로이 페이지의 내용이 골칫거리 인 경우 저희에게 알려주십시오. 우리는 5 일 근무일 이내에 이메일을 처리 할 것입니다.

커뮤니티에서 표절 사례를 발견한 경우 info-contact@alibabacloud.com 으로 관련 증거를 첨부하여 이메일을 보내주시기 바랍니다. 당사 직원이 영업일 기준 5일 내에 연락 드리도록 하겠습니다.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.