백업의 필요성
서버는 언젠가는 장애를 일으키며 멈춘다.
언제 일어날지 모르는 장애에 대비해 중요한 데이터를 다른 곳에 보관해야 한다.
그렇다면 무엇을 언제 어디에 백업할 지 궁금해진다.
이를 정하는 것을 백업 정책이라고 한다.
백업 정책
백업 정책은 무엇을 어디에 어떻게 와 언제정도를 정하면 된다.
ex)
무엇을 - 웹소스, DB, 스토리지
어디에 - 백업 디렉토리
어떻게 - tar볼로 묶어서 / DB덤프는 백업 툴 사용 / 스토리지는 용량이 크기 때문에 이중화를 통해 안정성 확보
언제 - 새벽 3시~5시 등 트래픽이 가장 적은 시간을 선정
와 같이 정한다.
백업 과정 (명령어)
tar - 리눅스의 압축 명령어
사실 tar은 압축은 아니고 하나의 파일로 묶는 느낌이다. (용량이 안줄어듬)
사용법 tar -옵션
-cvf 압축한파일이름 압축될파일이름
tar -cvf test.tar test.txt
test.txt 파일이 test.tar로 압축됨
-xvf 압축파일
tar -xvf test.tar
test.txt가 디렉토리에 생긴다.
다음으로 실질적인 백업 명령어
보통 DB로 많이 쓰는 mysql과 mariadb가 있는데, mysql과 mariadb차이는 거의 없다고 보면 된다고 한다.
mariadb를 사용할 것이므로 mariadb를 기준으로 작성한다.
mariabackup - mariadb를 사용하는 백업
사용법은 뒤에 옵션들을 적어준다.
--no-lock : 락을 걸지 않는 옵션
--move-back : 백업한 내용을 가져올때 쓰는 옵션인듯 --copy-back 옵션과 동일하다고 함
예시)
mariabackup\
--backup\
--no-lock\ 락을 해제해줘야 함
--target-dir=[백업파일을 저장할 디렉토리 경로]
#lib_logfile0 : 백업중 CRUD에 의한 트랜젝션 파일
--prepare \
--target-dir=[위에서 지정한 백업 디렉토리 경로]
--host=[백업할 호스트 아이피]\
--port=3306\
--user=[유저명]\
--password='[비밀번호]'\
로컬 호스트에서 실험용으로 작업할때는 host 밑으로는 db접속 관련 설정은 필요없다고 한다.
복구과정
mariabackup\
--move-back\
--user=[유저명]\
--password='[패스워드]'\
--target-dir=[백업한 디렉토리 경로]\
--data-dir=[복구할 디렉토리 경로]
아직 감이 잘 안잡히는데 한번 해봐야 알 것 같다...
'리눅스 > 서버 백업' 카테고리의 다른 글
리눅스 0, 1 / PIPESTATUS (0) | 2023.09.01 |
---|---|
명령어 - set [옵션] [옵션명] (0) | 2023.09.01 |
서버 파일 백업 (0) | 2023.09.01 |