지식나눔

오라클과 관련하여 기초적인 질문드립니다.

일단 저는 컴퓨터 전공이 아니라 약학, 화학 전공입니다.
그래서 DB 분야를 현재 알아가는 중인데요. 개념이 안 서는 부분이 있어서 문의 드립니다.
공부하려고 책도 샀는데 이쪽 분야의 기초(당연한 것이) 가 저에게는 어렵습니다.

일단 오라클에서 파생되는 data 를 백업하려고 하는데요.
그냥 통상적으로 파일 저장 복사하는 것 처럼 하면 안되는 이유를 알고 싶습니다.
업체에 문의 했을 때는 파일 구조상, table 상 연결이 다르기 때문이라던데

간단하게 알고 싶습니다.  

 
  • 오라클
  • DB
지식의 출발은 질문, 모든 지식의 완성은 답변! 
각 분야 한인연구자와 현업 전문가분들의 답변을 기다립니다.
답변 2
  • 답변

    변경필님의 답변

    비 전공자로서 제가 이해하고 있는 한도내에서 설명을 드리면 다음과 같습니다.

    데이터베이스에 저장되는 시험값(데이터)는 단순히 시험값만 저장되는 것이 아닙니다.
    해당 시험값에 관련된 정보들이 같이 저장이 됩니다.
    이때 저장되는 시험값, 그외 관련 정보들은 1곳에 저장이 되지 않고, 각각의 저장 정보 항목에 맞게 지정된 곳에 저장이 됩니다.

    예를 들어 시험 후 시험값이 저장이 되고, 시험값만 복사를 해서 다른 곳에 옮긴다면, 해당 시험값은 의미 없는 data입니다.
    시험값과 관련된 정보들(예, 시험자, 프로그램 시작시간, 시험 시작 시간, 반응시간, 기타 시험 조건, 시험 검증값등)이 모두 있어야 의미 있는 시험값(data)가 됩니다.

    db 백업시 통채로 아님 계정별로 백업을 하는 이유는 각각의 항목에 저장된 data의 연결고리를 유지하기 위함으로 이해 하시면 되지 않을까 합니다.

    만약 A라는 db에서 B라는 db로 자료를 옮길때 db의 구조가 동일하다면 문제가 없겠지만, 서로 상이한것이 있다면 변환 작업을 해주어야 합니다. 일반적인 저장/복사 작업하고는 다른 것입니다.

    도움이 되었는지 모르겠습니다.
    비 전공자로서 제가 이해하고 있는 한도내에서 설명을 드리면 다음과 같습니다.

    데이터베이스에 저장되는 시험값(데이터)는 단순히 시험값만 저장되는 것이 아닙니다.
    해당 시험값에 관련된 정보들이 같이 저장이 됩니다.
    이때 저장되는 시험값, 그외 관련 정보들은 1곳에 저장이 되지 않고, 각각의 저장 정보 항목에 맞게 지정된 곳에 저장이 됩니다.

    예를 들어 시험 후 시험값이 저장이 되고, 시험값만 복사를 해서 다른 곳에 옮긴다면, 해당 시험값은 의미 없는 data입니다.
    시험값과 관련된 정보들(예, 시험자, 프로그램 시작시간, 시험 시작 시간, 반응시간, 기타 시험 조건, 시험 검증값등)이 모두 있어야 의미 있는 시험값(data)가 됩니다.

    db 백업시 통채로 아님 계정별로 백업을 하는 이유는 각각의 항목에 저장된 data의 연결고리를 유지하기 위함으로 이해 하시면 되지 않을까 합니다.

    만약 A라는 db에서 B라는 db로 자료를 옮길때 db의 구조가 동일하다면 문제가 없겠지만, 서로 상이한것이 있다면 변환 작업을 해주어야 합니다. 일반적인 저장/복사 작업하고는 다른 것입니다.

    도움이 되었는지 모르겠습니다.
    양현모(yymomo) 2018-08-20

    감사합니다. 저도 현재 개념을 잡고 있어서요. 단순하게는 전체 data를 이미지 형태로 백업하는 방법이 있는데 해당 부분이 효율성 측면에서는 떨어져서 다른 방법들이 있다는 정도 까지만 이해했고요. daily, monthly 백업이니 하는 개념을 잡아가는 중입니다.

  • 답변

    안강우님의 답변

    DB관련일 했던게 벌써 10년이 넘어가서 가물가물 합니다만, 단순히 table 구조와 해당 table의 데이터만 복사하는구조라면 DB파일만 쏙 빼면 되겠지만 (DB시스템이 단순한 DB프로그램의경우) 오라클과 같이 다양한 기능을 제공하는DB시스템중 한가지기능인 인덱스는 빠른 인덱싱을 위한 별도의 table이 존재하며 database 설정파일내에 별도의 설정 테이블에도 존재하지만 database들에 대한 인덱싱을 위한 또다른 구조가 있어서 관련 정보까지 복사해가지 않으면 제대로 백업이 안되는것으로 여기면됩니다.

    젤 편한 방법은 오라클에서 지원하는 백업 프로세스는 따르시는게 좋습니다. DB에 별도로 기능을 추가하지 않더라도 오라클DB에서 관리를 위해서 위에 말한것처럼 기본 인덱싱과 같은 다양한 DB기능을 기본적으로 적용하기 때문에 구글링으로 오라클 DB완전 백업 같은 키워드로 검색하시면 쉽게 백업 가능하실겁니다.
    DB관련일 했던게 벌써 10년이 넘어가서 가물가물 합니다만, 단순히 table 구조와 해당 table의 데이터만 복사하는구조라면 DB파일만 쏙 빼면 되겠지만 (DB시스템이 단순한 DB프로그램의경우) 오라클과 같이 다양한 기능을 제공하는DB시스템중 한가지기능인 인덱스는 빠른 인덱싱을 위한 별도의 table이 존재하며 database 설정파일내에 별도의 설정 테이블에도 존재하지만 database들에 대한 인덱싱을 위한 또다른 구조가 있어서 관련 정보까지 복사해가지 않으면 제대로 백업이 안되는것으로 여기면됩니다.

    젤 편한 방법은 오라클에서 지원하는 백업 프로세스는 따르시는게 좋습니다. DB에 별도로 기능을 추가하지 않더라도 오라클DB에서 관리를 위해서 위에 말한것처럼 기본 인덱싱과 같은 다양한 DB기능을 기본적으로 적용하기 때문에 구글링으로 오라클 DB완전 백업 같은 키워드로 검색하시면 쉽게 백업 가능하실겁니다.
    양현모(yymomo) 2019-01-06

    엄청 복잡하네요. 오라클에 대한 감이 전혀 없어서 일단은 업체쪽에 연락을 해두었답니다.