[Mysql] mysqldump, xtrabackup 백업 및 복원 방법

ㅁ mysqldump, xtrabackup 백업 및 복원 방법


구  분
  
  
Mysqldump
(DB단위)

Mysql –u 계정 –p 백업하고자하는DB > 파일명.sql

Mysql –u 계정 –p 복원하고자하는DB < 백업받은파일명.sql
Mysqldump
(Table단위)

for table in `/usr/local/mysql/bin/mysql -u 계정 --password=’계정비밀번호’ -e"show tables" 백업하고자하는DB | grep -v "Tables_in_백업하고자하는DB " | grep -v "^$"`
do
/usr/local/mysql/bin/mysqldump -q -u 계정 --password=’계정비밀번호백업하고자하는DB $table > $table.sql
Done

Mysql –u 계정 –p 복원하고자하는DB 복원하고자하는TABLE < 백업받은파일명.sql
Xtrabackup(full)
Innobackupex --user=계정 --password=계정비밀번호 --no-timestamp 전체백업경로

innobackupex --apply-log --redo-only 전체백업경로
innobackupex --copy-back innobackupex --copy-back 전체백업경로

Xtrabackup
(Incremental)

사전 확인사항 : LSN(log sequence number), 백업 디렉토리내 xtrabackup_checkpoints 파일에 있음.
innobackupex --user=계정 --password= 계정비밀번호 --incremental --incremental-lsn= LSN번호 --no-timestamp 증분백업경로

innobackupex --apply-log --redo-only 전체백업경로 --incremental-dir=증분백업경로
innobackupex --copy-back 전체백업경로

.