반응형
Ⅰ. mysqldump 란?
MySQL 및 MariaDB 데이터베이스의 백업을 생성하는 유틸리티입니다. 백업뿐만 아니라, 데이터의 이관이나 복제 등과 같이 어떤 MySQL 서버에서 다른 서버로 데이터를 옮기는 경우에 많이 사용됩니다.
Ⅱ. mysqldump 기본 구조
mysqldump -u [사용자] -p [데이터베이스명] > 백업파일.sql -u: 사용자 이름 지정 -p: 비밀번호 입력 요구 [데이터베이스명]: 백업할 데이터베이스 > 백업파일.sql: 덤프를 저장할 파일 |
Ⅲ. mysqldump 옵션
ⅰ. 기본 옵션
옵션 | 설명 |
-u [사용자] | MySQL 사용자 지정 |
-p | 비밀번호 입력 요청 |
-h [호스트] | 원격 서버 백업 시 사용 (예: -h 192.168.0.117) |
-P [포트번호] | MySQL 서버 포트 지정 (기본값: 3306) |
-A, --all-databases | 모든 데이터베이스 백업 |
--databases DB1 DB2 | 여러 개의 데이터베이스 백업 |
DB_NAME [TABLES] | 특정 데이터베이스 및 테이블만 백업 |
ⅱ. 출력 관련 옵션
옵션 | 설명 |
-r [파일명] | 백업 파일 저장 (예: -r backup.sql) |
-t, --no-create-info | 테이블 구조 없이 데이터만 덤프 |
-d, --no-data | 테이블 구조만 덤프 (데이터 제외) |
--single-transaction | InnoDB 백업 시 트랜잭션을 유지하면서 백업 (일관성 보장) |
--skip-comments | SQL 주석 제외 |
--add-drop-table | DROP TABLE IF EXISTS 포함하여 덤프 |
--add-locks | LOCK TABLES 문 추가 (성능 향상) |
ⅲ. 압축 및 포맷 관련 옵션
옵션 | 설명 |
--compact | 덤프 크기 최소화 (주석, 추가 명령 생략) |
--compress | MySQL 서버와의 데이터 전송을 압축 |
--hex-blob | BLOB 데이터를 16진수(hex)로 덤프 |
--tab=[디렉토리] | CSV 같은 테이블별 텍스트 파일 생성 |
ⅳ. 복원 관련 옵션
옵션 | 설명 |
--no-create-db | CREATE DATABASE 문 없이 덤프 |
--default-character-set=utf8mb4 | 기본 문자셋 지정 |
--disable-keys | ALTER TABLE ... DISABLE KEYS 포함 (복원 속도 향상) |
Ⅳ. mysqldump 백업 예시
ⅰ. 전체 데이터베이스 백업
mysqldump -u root -p --all-databases > all_backup.sql --all-databases: 모든 데이터베이스 백업 |
ⅱ. 특정 테이블만 백업
mysqldump -u root -p mydb table1 table2 > tables_backup.sql mydb: 백업할 데이터베이스 table1 table2: 특정 테이블만 백업 |
ⅲ. 구조(스키마)만 백업
mysqldump -u root -p --no-data mydb > schema_backup.sql --no-data: 데이터 없이 테이블 구조만 백업 |
ⅳ. 데이터만 백업
mysqldump -u root -p --no-create-info mydb > data_backup.sql --no-create-info: 테이블 구조 없이 데이터만 덤프 |
ⅴ. 백업 파일 압축하기
mysqldump -u root -p mydb | gzip > mydb_backup.sql.gz gzip: 압축 저장 |
반응형
'데이터베이스' 카테고리의 다른 글
MySQL 8.0에서 패스워드 정책 확인 및 변경 방법에 대해 알아보겠습니다. (0) | 2024.11.07 |
---|---|
PostgreSQL에 대해 알아보겠습니다. (1) | 2024.10.29 |
aria init function returned error 에러 조치 (0) | 2024.08.06 |
DDL, DML, DCL 에 대해 알아보겠습니다. (0) | 2024.07.27 |
오라클 데이터베이스에서 서비스 계정의 상태를 확인 및 관리 (0) | 2024.07.26 |