대용량 InnoDB백업을 위한 솔루션을 찾다가 발견한 솔루션 입니다.

· 12년 전 · 5171 · 1

대용량 InnoDB백업을 위한 솔루션을 찾다가 발견한 솔루션 입니다.
아직 테스트가 안되서 뭐라고 직접 사용기를 올리기는 좀 그렇고
http://www.percona.com/docs/wiki/percona-xtrabackup:xtrabackup:how_to_recipes
위 페이지 기준으로 간략하게 사용법을 만들어 봤습니다.

영어실력이 미천한지라 잘못 해석된 부분이 있을 수 있으니 이점 참고 하시고
좋은 솔루션 인것은 확실한것 같으니 이 솔루션에 대해서 필요하신분은 써 보시고
테스트 해서 결과를 도출 해 보고 싶네요 ㅎ


* Percona XtraBackup 사용법

# Full Backup

    1. my.cnf 설정
      [mysqld]
      datadir=/var/lib/mysql/            => MySql 데이터 디렉토리
     
      [xtrabackup]
      target_dir=/data/baclup/mysql/    => 백업 데이터 디렉토리

    2. 백업 방법
        - xtrabackup --backup            => my.cnf 설정대로 백업
        - xtrabackup --prepare            => 복원을 위한 준비
        - xtrabackup --prepare            => 새로운 innoDB 로그파일 생성을 위해 다시한번 실행
   
    3. 백업의 성공기준
        - xtrabackup 의 종료 상태값이 0 인경우.
        - 두번째 '--prepare'시 로그파일이 생성된뒤 이어서 "Log file ./ib_logfile0 did not exist: new to be created" 와 같은
           메시지를 확인 해야함.
   
    4. 서버에 충분한 메모리가 있다면 '--use-memmory' 옵션을 통해서 버퍼풀을 지정할 수 있다.

 


# Incremental Backup

    ※ 증분백업을 위서는 '--prepare'가 실행되기전 Full 백업이 필요하다.

    1. 백업 방법(월요일에 Full Backup이 실행 되었다고 가정)
        - 명령어
            # xtrabackup --backup --target-dir=/data/backups/inc/tue/ \        => 화요일 증분 백업
                     --incremental-basedir=/data/backups/mysql/
           
            # xtrabackup --backup --target-dir=/data/backups/inc/wed/ \        => 수요일 증분 백업
                     --incremental-dir=/data/backups/inc/wed/

    2. Prepare
        - 명령어
            # xtrabackup --prepare --apply-log-only --target-dir=/data/backups/mysql/        => 월요일 기준 데이터로 복원 준비
 
            # xtrabackup --prepare --apply-log-only --target-dir=/data/backups/mysql/ \        => 화요일 기준 데이터로 복원 준비
                 --incremental-dir=/data/backups/inc/tue/
           
            # xtrabackup --prepare --apply-log-only --target-dir=/data/backups/mysql/ \        => 수요일 기준 데이터로 복원 준비
                 --incremental-dir=/data/backups/inc/tue/

 

# Restoring the Backup
   
    ※ xtrabackup 은 MyISAM 파일을 복사하지 않기때문에 '.frm' 파일들과 나머지 데이터베이스 파일들은 따로 백업을 해야 한다.
    
    1. 복원
        - InnoDB 복원은 간단하다 Preparing 후 아래와 같은방법으로 복원할 수 있다.
            # cd /data/backups/mysql
            # rsync -rvt --exclude 'xtrabackup_checkpoints' --exclude 'xtrabackup_logfile' \
                     ./ /var/lib/mysql
            # chown -R mysql:mysql /var/lib/mysql/

|

댓글 1개

댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
12년 전 조회 2,114
12년 전 조회 2,543
12년 전 조회 1,922
12년 전 조회 1,238
12년 전 조회 2,436
12년 전 조회 2,036
12년 전 조회 8,460
12년 전 조회 2,919
12년 전 조회 2,709
12년 전 조회 2,768
12년 전 조회 3,389
12년 전 조회 1,382
12년 전 조회 4,498
12년 전 조회 2,140
12년 전 조회 7,267
12년 전 조회 1,783
12년 전 조회 1,785
12년 전 조회 1,855
12년 전 조회 1,474
12년 전 조회 3,732
12년 전 조회 2,216
12년 전 조회 2,260
12년 전 조회 1,763
12년 전 조회 3,531
12년 전 조회 2,448
12년 전 조회 1,218
12년 전 조회 4,401
12년 전 조회 1,792
12년 전 조회 1,549
12년 전 조회 1,974
12년 전 조회 6,294
12년 전 조회 1,919
12년 전 조회 3,564
12년 전 조회 3,017
12년 전 조회 1,254
12년 전 조회 3,714
12년 전 조회 2,146
12년 전 조회 2,040
12년 전 조회 2,147
12년 전 조회 4,065
12년 전 조회 2,877
12년 전 조회 4,492
12년 전 조회 9,391
12년 전 조회 4,938
12년 전 조회 4,558
12년 전 조회 2,147
12년 전 조회 2,191
12년 전 조회 3,943
12년 전 조회 4,780
12년 전 조회 5,172
12년 전 조회 2,404
12년 전 조회 2,081
12년 전 조회 1,659
12년 전 조회 1,726
12년 전 조회 3,534
12년 전 조회 3,512
12년 전 조회 2,048
12년 전 조회 3,567
12년 전 조회 2,065
12년 전 조회 9,312
12년 전 조회 2,305
12년 전 조회 4,535
12년 전 조회 7,187
12년 전 조회 2,347
12년 전 조회 3,607
12년 전 조회 1,339
12년 전 조회 2,042
12년 전 조회 1,924
12년 전 조회 2,095
12년 전 조회 4,082
12년 전 조회 1,851
12년 전 조회 2,594
12년 전 조회 2,047
12년 전 조회 1,684
12년 전 조회 2,112
12년 전 조회 2,850
12년 전 조회 2,130
12년 전 조회 1,970
12년 전 조회 2,490
12년 전 조회 1.5만
12년 전 조회 1,755
12년 전 조회 1,535
12년 전 조회 3,385
12년 전 조회 9,619
12년 전 조회 1,930
12년 전 조회 1,882
12년 전 조회 2,318
12년 전 조회 1,806
12년 전 조회 1,984
12년 전 조회 4,247
12년 전 조회 2,156
12년 전 조회 2,821
12년 전 조회 1,813
12년 전 조회 1,993
12년 전 조회 3,698
12년 전 조회 1,534
12년 전 조회 2,027
12년 전 조회 2,347
12년 전 조회 2,782
12년 전 조회 2,888