MongoDB dump 백업 & 복구 (mongorestore)

2020. 1. 16. 17:19·DataBase/NoSQL

 

Dump 가 뭔데?

데이터베이스 오브젝트(스키마, 테이블, 뷰 테이블 등)를 백업하는 것.

 

 

MongoDB 는 여러 테이블과 스키마를 통째로 dump 명령어(정확히는 실행파일)가 있다.

이름하여 mongodump

 

 

postgresql 의 .dump 파일 

.dump 파일은 사실상 여러 SQL문 (DDL, DML, DCL) 을 스크립트 파일형태로 저장한 것과 같다.
이 스크립트는 테이블과 스키마 정보를 담고있다.

따라서 import `.dump` 하게되면 해당 SQL문을 연속해서 실행하게된다.

=> 백업 이전의 테이블과 스키마 정보를 그대로 불러온다.

-- PostgreSQL database dump

-- Dumped from database version 14.1
-- Dumped by pg_dump version 14.2

SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;

--
-- Name: public; Type: SCHEMA; Schema: -; Owner: postgres
--

CREATE SCHEMA public;

CREATE TABLE public.base_contents (
    id integer NOT NULL,
    description character varying,
);


ALTER TABLE public.base_contents OWNER TO postgres;

--
-- Name: base_contents_id_seq; Type: SEQUENCE; Schema: public; Owner: postgres
--

CREATE SEQUENCE public.base_contents_id_seq
    AS integer
    START WITH 1
    INCREMENT BY 1
    NO MINVALUE
    NO MAXVALUE
    CACHE 1;

-- PostgreSQL database dump complete

 

 

1. 개념

mongodump

DB내부의 Collection, Document들을 bson 파일에

 

metadata는 'Key' 속성(Model Schema)는 json 파일에 

 

mongorestore

원하는 DB에 metadata.json, bson 파일을 불러와 Schema, Collection, Document들을 복구한다.

 

2. 사용법

<리눅스 쉘에서>


[mongodump] 백업

sudo mongodump --out 저장할 폴더 경로 --host 호스트명(기본 localhost) --port 포트명 -u 계정명 -p 비밀번호 -d DB명

[mongorestore] 복구

sudo mongorestore --host 호스트명 -d DB명 백업폴더경로 --port 포트명 -u 계정명 -p 비밀번호 

 

저작자표시 (새창열림)

'DataBase > NoSQL' 카테고리의 다른 글

[MongoDB] Drop DB on MongoDB with test  (0) 2023.07.14
mongodb active:failed Error  (0) 2020.01.31
NoSQL  (0) 2020.01.05
'DataBase/NoSQL' 카테고리의 다른 글
  • [MongoDB] Drop DB on MongoDB with test
  • mongodb active:failed Error
  • NoSQL
M_Falcon
M_Falcon
  • M_Falcon
    Falcon
    M_Falcon
  • 전체
    오늘
    어제
    • 분류 전체보기 (432)
      • Web (16)
        • Nodejs (14)
        • Javascript (23)
        • FrontEnd (4)
      • DataBase (39)
        • Fundamental (1)
        • Redis (4)
        • PostgreSQL (10)
        • NoSQL (4)
        • MySQL (9)
        • MSSQL (3)
        • Error (4)
      • Algorithm (79)
        • Algorithm (문제풀이) (56)
        • Algorithm (이론) (23)
      • JVM (65)
        • Spring (13)
        • JPA (5)
        • Kotlin (13)
        • Java (24)
        • Error (7)
      • 기타 (70)
        • Kafka (3)
        • Kubernetes (3)
        • Docker (13)
        • git (19)
        • 잡동사니 (27)
      • 재테크 (11)
        • 세무 (4)
        • 투자 (3)
        • 보험 (0)
      • BlockChain (2)
        • BitCoin (0)
      • C (32)
        • C (10)
        • C++ (17)
        • Error (3)
      • Low Level (8)
        • OS (3)
        • 시스템 보안 (5)
      • 네트워크 (3)
      • LINUX (30)
        • Linux (26)
        • Error (4)
      • 저작권과 스마트폰의 이해 (0)
      • 생각 뭉치 (6)
      • 궁금증 (2)
      • Private (4)
        • 이직 경험 (0)
        • 꿈을 찾아서 (1)
      • Android (21)
        • OS (4)
  • 블로그 메뉴

    • 홈
    • WEB
    • 알고리즘
    • DataBase
    • Linux
    • Mobile
    • C
    • 방명록
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    백준
    Git
    kafka
    알고리즘
    ubuntu
    JPA
    Programmers
    C++
    프로그래머스
    java
    Spring
    algorithm
    linux
    database
    PostgreSQL
    Bitcoin
    javascript
    docker
    Kotlin
    android
  • hELLO· Designed By정상우.v4.10.3
M_Falcon
MongoDB dump 백업 & 복구 (mongorestore)
상단으로

티스토리툴바