[Day 12 | DB] 데이터베이스 백업과 복원

y♡ding·2024년 10월 29일
0

데브코스 TIL

목록 보기
80/163

1. mysqldump를 사용한 백업

mysqldump는 MySQL과 MariaDB에서 제공하는 데이터베이스 백업 도구로, 데이터를 SQL 덤프 파일로 저장할 수 있습니다. 백업은 주로 데이터베이스 단위테이블 단위로 나눌 수 있습니다.

1) 데이터베이스 단위로 백업

  • 명령어
mysqldump -u 사용자이름 -p 데이터베이스이름 > 데이터베이스백업.sql
  • 설명:
    • -u 사용자이름: 데이터베이스에 접속할 사용자 이름을 지정합니다.
    • -p: 비밀번호를 입력할 수 있도록 합니다.
    • 데이터베이스이름: 백업할 데이터베이스의 이름을 지정합니다.
    • > 데이터베이스백업.sql: 백업 파일을 저장할 경로와 파일명을 지정합니다.
  • 예시:
    mysqldump -u root -p sample_db > sample_db_backup.sql
    • 이 명령어는 sample_db라는 데이터베이스 전체를 sample_db_backup.sql 파일로 백업합니다.

2) 테이블 단위로 백업

  • 명령어 구조:
mysqldump -u 사용자이름 -p 데이터베이스이름 테이블이름 > 테이블백업.sql
  • 설명:
    • 특정 테이블만 백업하려면 데이터베이스 이름과 테이블 이름을 함께 지정합니다.
  • 예시:
    mysqldump -u root -p sample_db emp > emp_backup.sql
    • 이 명령어는 sample_db 데이터베이스의 emp 테이블을 emp_backup.sql 파일로 백업합니다.

2. mysql을 사용한 복원

백업한 SQL 덤프 파일을 이용해 데이터베이스나 테이블을 복원할 수 있습니다.

1) 데이터베이스 단위로 복원

  • 명령어 구조
mysql -u 사용자이름 -p 데이터베이스이름 < 데이터베이스백업.sql
  • 설명:
    • 데이터베이스이름: 복원할 데이터베이스 이름을 지정합니다. 이 데이터베이스가 미리 생성되어 있어야 합니다.
    • < 데이터베이스백업.sql: 백업 파일을 읽어서 복원 작업을 수행합니다.
  • 예시
    mysql -u root -p sample_db < sample_db_backup.sql
    • 이 명령어는 sample_db_backup.sql 파일을 사용하여 sample_db 데이터베이스를 복원합니다.
    • 만약 sample_db가 존재하지 않는다면, 미리 CREATE DATABASE sample_db; 명령으로 데이터베이스를 생성해야 합니다.

2) 테이블 단위로 복원

  • 특정 테이블만 복원하려면, 해당 테이블을 백업했던 SQL 파일을 사용하여 복원합니다. 테이블 단위 복원도 데이터베이스와 동일한 명령어 구조를 사용합니다.
mysql -u root -p sample_db < emp_backup.sql
  • 이 명령어는 emp_backup.sql 파일을 사용하여 sample_dbemp 테이블을 복원합니다.

0개의 댓글

관련 채용 정보