|
DB 백업 명령어 |
|
단일 데이터베이스 백업 |
mysqldump 명령어를 이용하여 백업하는 방법은 다음과 같습니다.
mysqldump -u root -p [dbname] > [filename].sql
여기서 [dbname]은 데이터베이스 이름을 말하며, CREATE 명령어로 생성한 하나의 데이터베이스를 의미합니다.
또한 [filename]은 여러분이 저장하고자 하는 이름을 저장하면 됩니다.
|
전체 데이터베이스 백업 |
만약 MySQL 내부에 있는 모든 데이터베이스를 한 번에 백업하고자 하면 다음과 같이 사용할 수 있습니다.
mysqldump -u root -p --all-databases > [filename].sql
여기서는 전체 데이터베이스를 백업하는 명령어입니다.
따라서 명령어 내부에 특정 데이터베이스를 특정하는 부분이 존재하지 않습니다.
|
캐릭터 셋 옵션을 이용한 백업 |
데이터를 백업할 때 캐릭터 셋을 지정해줄 수 있습니다.
단일 데이터베이스 백업과 거의 비슷한 명령어입니다.
# euckr 캐릭터셋 설정으로 백업함 mysqldump -u root -p --default-character-set=euckr [dbname] -> [filename].sql # utf8 캐릭터셋 설정으로 백업함 mysqldump -u root -p --default-character-set=utf8 [dbname] -> [filename].sql
|
특정 테이블만 백업 |
만약 데이터베이스가 아닌 특정 테이블 데이터만 백업하고자 한다면 다음과 같은 방법으로 명령어를 사용하면 됩니다.
# [dbname] 내에 있는 [table_name] 테이블을 백업함 mysqldump -u root -p [dbname] [table_name] > [filename].sql # [dbname] 내에 있는 여러 테이블을 백업함 mysqldump -u root -p -B [dbname] --tables [table_name_1] [table_name_2] ... > [filename].sql
만약 백업 명령어에서 [dbname].[table_name] 이런 식으로 사용하시는 걸로 착각하시면 안 됩니다아아!
또한 여러 테이블을 백업할 때 -B 옵션과 --tables 옵션을 적용해주시면 됩니다.
|
테이블 구조만 백업 |
만약 테이블의 구조만 백업하고자 하면, 다음과 같은 명령어로 백업하면 됩니다.
테이블의 구조란 데이터베이스 내에 있는 테이블들의 데이터를 제외하고 나머지를 모두 백업한다는 의미입니다.
mysqldump -u root -p --no-data [dbname] > [filename].sql
구조만 백업하기 때문에 --no-data 옵션을 넣어줍니다.
|
데이터베이스를 XML 형태로 백업 |
MySQL에서는 데이터베이스를 백업할 때 XML 형태로 백업이 가능합니다.
mysqldump -u root -p --xml [dbname] > [filename].sql
|
DB 복구 명령어 |
MySQL에서는 위와 같은 명령어로 백업을 했을 때 해당 파일을 이용하여 복구가 가능합니다.
|
개별 데이터베이스 복구 |
데이터베이스를 하나씩 복구하고자 할 때 다음과 같은 명령어로 복구하면 됩니다.
# 쉘에서 복구하는 명령어 mysql -u root -p [dbname] < [filename].sql
-- mysql 내부에서 복구하는 명령어 use [dbname]; source [filename].sql;
|
전체 데이터베이스 복구 |
전체 데이터베이스를 한 번에 복구하고자 할 때 다음과 같은 명령어로 복구하면 됩니다.
# 쉘에서 복구하는 명령어 mysql -u root -p < [filename].sql
-- mysql 내부에서 복구하는 명령어 -- use를 이용하여 db를 선택하지 않음 source [filename].sql
'SQL > MySQL' 카테고리의 다른 글
[MySQL] 뷰 생성하기(VIEW 생성하기) (2) | 2019.03.12 |
---|---|
[MySQL] DCL 명령어 사용하는 방법(GRANT, REVOKE, COMMIT, ROLLBACK) (0) | 2019.03.08 |
[MySQL] DML 명령어 사용하는 방법(SELECT, INSERT, UPDATE, DELETE) (0) | 2019.03.08 |
[MySQL] DDL 명령어 사용하는 방법(CREATE, DROP, ALTER, RENAME, TRUNCATE) (1) | 2019.03.07 |