KR101556435B1 - 데이터베이스 백업본 복구 방법 및 그 장치 - Google Patents

데이터베이스 백업본 복구 방법 및 그 장치 Download PDF

Info

Publication number
KR101556435B1
KR101556435B1 KR1020127010761A KR20127010761A KR101556435B1 KR 101556435 B1 KR101556435 B1 KR 101556435B1 KR 1020127010761 A KR1020127010761 A KR 1020127010761A KR 20127010761 A KR20127010761 A KR 20127010761A KR 101556435 B1 KR101556435 B1 KR 101556435B1
Authority
KR
South Korea
Prior art keywords
database
new version
column
change
version
Prior art date
Application number
KR1020127010761A
Other languages
English (en)
Other versions
KR20130095170A (ko
Inventor
타오 롱
Original Assignee
지티이 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 지티이 코포레이션 filed Critical 지티이 코포레이션
Publication of KR20130095170A publication Critical patent/KR20130095170A/ko
Application granted granted Critical
Publication of KR101556435B1 publication Critical patent/KR101556435B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/80Database-specific techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 데이터베이스 백업본 복구 방법 및 그 장치를 제공하는데, 그 방법은 기존 버전의 데이터베이스의 테이블 구조를 보존하며 기존 버전의 데이터베이스를 백업하는 단계와, 새로운 버전의 데이터베이스의 모든 테이블의 기록을 비우고 새로운 버전의 데이터베이스의 테이블 구조를 취득하는 단계와, 기존 버전의 데이터베이스의 테이블 구조와 새로운 버전의 데이터베이스의 테이블 구조를 비교하여 테이블 구조에 변화가 발생하였는가를 판단하는 단계와, 변화의 유형 및 대응되는 사전에 설정된 대책에 근거하여 기존 버전의 데이터베이스의 백업본을 새로운 버전의 데이터베이스에 복구시키는 단계를 포함한다. 본 발명에 의하면 데이터베이스 백업본 복구의 전향호환을 실현할 수 있다.

Description

데이터베이스 백업본 복구 방법 및 그 장치{DATABASE BACKING-UP AND RECOVERING METHOD AND DEVICE}
본 발명은 데이터베이스 분야에 관한 것으로, 특히 데이터베이스 백업본 복구 방법 및 그 장치에 관한 것이다.
기존기술에 있어서, 데이터베이스의 구조적 설계(테이블 구조와 데이터 컨텐츠를 포함)는 기능 블록의 변화에 따라 변화하게 되고 각 버전사이의 차이점은 크다. 테이블 구조와 데이터 컨텐츠를 새로운 버전과 기존 버전 사이에서 호환할 수 없으므로 기존의 데이터베이스의 백업본을 복구할 경우 백업한 기존 버전의 데이터베이스를 데이터베이스 구조가 변화된 새로운 버전의 데이터베이스에 복구시킬 수 없다.
도1은 기존기술에 따른 데이터베이스 백업본 복구 방법을 나타낸 흐름도로, 그 처리 프로세스는 하기와 같다.
(1)기존 버전의 데이터베이스를 작동한다.
(2)새로운 버전의 데이터베이스를 작동한다.
(3)새로운 버전의 데이터베이스의 모든 테이블의 기록을 비운다.
(4)인위적으로 각 새로운 테이블과 기존 테이블이 변화되었는가를 판단한다.
(5)변화가 없는 테이블은 데이터베이스 관리 시스템이 제공하는 데이터 이전 도구를 이용하여 기존 데이터베이스중의 테이블 구조가 동일한 각 테이블의 기록을 새로운 데이터베이스로 이전한다.
(6)데이터베이스 관리 시스템이 제공하는 데이터 이전 도구를 이용하여 기존 데이터베이스중의 테이블 구조가 서로 다른 각 테이블에 대하여 어느 열은 버리고 어느 열에는 데이터 유형 전환 등 특수 대책을 수행하여야 하는가를 판단하여 대응되는 작업 유형을 선택한 후 기록을 새로운 데이터베이스로 이전한다.
(7)일부 테이블의 기록 내용에 특수 수정을 수행하여야만이 새로운 버전의 프로그램의 요구를 만족시킬 수 있으면 일련의 sql 어구를 수행하거나 혹은 일련의 프로그램을 수행하므로서 처리를 수행할 수 있다.
데이터 복구를 종결짓는다.
상기 단계는 아주 복잡한 과정으로 특히 (4), (5), (6)은 테이블이 많을 경우 그 작업에 많은 시간이 소모된다.
본 발명은 데이터베이스 백업본 복구의 전향호환을 실현할 수 있는 데이터베이스 백업본 복구 방법 및 그 장치를 제공하는 것을 그 목적으로 한다.
본 발명의 한 방면에 의하면 기존 버전의 데이터베이스의 테이블 구조를 보존하며 기존 버전의 데이터베이스를 백업하는 단계와, 새로운 버전의 데이터베이스의 모든 테이블의 기록을 비우고 새로운 버전의 데이터베이스의 테이블 구조를 취득하는 단계와, 기존 버전의 데이터베이스의 테이블 구조와 새로운 버전의 데이터베이스의 테이블 구조를 비교하여 테이블 구조에 변화가 발생하였는가를 판단하는 단계와, 변화의 유형 및 대응되는 사전에 설정된 대책에 근거하여 기존 버전의 데이터베이스의 백업본을 새로운 버전의 데이터베이스에 복구시키는 단계를 포함하는 데이터베이스 백업본 복구 방법을 제공한다.
본 발명의 다른 한 방면에 의하면 기존 버전의 데이터베이스를 백업하고 기존 버전의 데이터베이스의 테이블 구조를 보존하는 백업블록과, 새로운 버전의 데이터베이스의 모든 테이블의 기록을 비우고 새로운 버전의 데이터베이스의 테이블 구조를 취득하는 취득블록과, 기존 버전의 데이터베이스의 테이블 구조와 새로운 버전의 데이터베이스의 테이블 구조를 비교하여 테이블 구조에 변화가 발생하였는가를 판단하는 비교블록과, 변화의 유형 및 대응되는 사전에 설정된 대책에 근거하여 기존 버전의 데이터베이스의 백업본을 새로운 버전의 데이터베이스에 복구시키는 복구블록을 포함하는 데이터베이스 백업본 복구 장치를 제공한다.
본 발명에 의하면 테이블 구조의 변화를 분석하므로서 기존기술에 있어서 백업한 기존 버전의 데이터베이스를 데이터베이스 구조 설계가 변화된 새로운 버전의 데이터베이스에 복구시킬 수 없는 문제를 해결하였고 데이터베이스 백업본 복구의 전향호환을 실현하였다.
도면은 본 발명에 대한 이해를 돕기 위한 것으로 본 발명의 명세서의 일부분이고 본 발명의 실시예와 본 발명을 해석하기 위한 것으로 본 발명을 한정하는 것이 아니다.
도1은 관련기술에 따른 데이터베이스 백업본 복구 방법을 나타낸 흐름도이고,
도2는 본 발명의 실시예에 따른 데이터베이스 백업본 복구 방법을 나타낸 흐름도이며,
도3은 본 발명의 바람직한 실시예에 따른 데이터베이스 백업본 복구 방법을 나타낸 흐름도이고,
도4는 본 발명의 실시예에 따른 데이터베이스 백업본 복구 장치를 나타낸 도이다.
아래 도면을 참조하고 실시예에 결부하여 본 발명을 상세하게 설명한다. 여기서, 상호 충돌되지 않는 상황하에서 본 발명중의 실시예 및 실시예중의 특징은 서로 조합될 수 있다.
일반적으로 데이터베이스는 다수의 데이터베이스 테이블을 포함하고 각 데이터베이스 테이블은 다수의 열로 구성되였으며 각 열은 데이터 구조를 구비하고 있다. 본 발명의 실시예는 그 데이터베이스를 기반으로 실시된다.
도2는 본 발명의 실시예에 따른 데이터베이스 백업본 복구 방법을 나타낸 흐름도로, 하기 단계를 포함한다.
단계S10, 기존 버전의 데이터베이스를 백업하는데, 그중, 기존 버전의 데이터베이스의 테이블 구조를 보존한다. 예를 들어 기존 버전에 있어서 백업에 필요한 테이블 구조 정보, 테이블 데이터 및 현재 버전 번호를 파일 형식으로 보존한다.
단계S20, 새로운 버전의 데이터베이스의 모든 테이블의 기록을 비우고 새로운 버전의 데이터베이스의 테이블 구조를 취득한다.
단계S30, 기존 버전의 데이터베이스의 테이블 구조와 새로운 버전의 데이터베이스의 테이블 구조를 비교하여 테이블 구조가 변화되였는가를 판단한다.
단계S40, 변화의 유형 및 대응되는 사전에 설정된 대책에 근거하여 기존 버전의 데이터베이스의 백업본을 새로운 버전의 데이터베이스에 복구시킨다.
본 실시예에 의하면 테이블 구조의 변화를 분석하므로서 기존기술에 있어서 백업한 기존 버전의 데이터베이스를 데이터베이스 구조 설계가 변화된 새로운 버전의 데이터베이스에 복구시킬 수 없는 문제를 해결하여 데이터베이스 백업본 복구의 전향호환성을 실현하였다.
테이블 구조가 변화되였는가를 판단하는 단계가 새로운 버전의 데이터베이스의 테이블 구조가 하기 변화중 최소한 한가지가 발생하였다고 확정하는 것임이 바람직하다.
1. 새로운 버전의 데이터베이스에 있어서 테이블을 삭제하였다.
2. 새로운 버전의 데이터베이스에 있어서 테이블을 추가하였다.
3. 새로운 버전의 데이터베이스중의 테이블이 개명되였다.
4. 새로운 버전의 데이터베이스중의 테이블에 있어서 열을 삭제하였다.
5. 새로운 버전의 데이터베이스중의 테이블에 있어서 열을 추가하였다.
6. 새로운 버전의 데이터베이스중의 테이블에 있어서 열이 개명되였다.
7. 새로운 버전의 데이터베이스의 테이블중의 열의 순서가 변경되였다.
8. 새로운 버전의 데이터베이스의 테이블중의 열의 데이터 유형이 변경되였다.
상기와 같은 데이터베이스의 구조의 변화는 단독적으로 나타날 수 있고 조합되여 함께 나타날 수 도 있다. 예를 들어 새로운 버전에 어느 테이블A가 테이블B로 개명되는 동시에 테이블B중의 열a가 삭제되는 변화가 발생할 수 있다. 그외, 상기한 테이블 혹은 열은 하나 혹은 다수에 한정되지 않는다.
본 실시예는 대량의 분석과 연구를 거쳐 각종 데이터베이스 구조의 변화를 최종적으로 상기와 같은 8개 유형으로 귀납하였다. 상기 8가지 변화는 테이블 구조의 비교를 통하여 간단히 식별할 수 있다.
대응되는 사전에 설정된 대책이 하기와 같은 몇가지중 최소한 하나를 포함하는 것이 바람직하다.
1. 변화1의 경우, 삭제된 테이블의 복구를 생략한다.
2. 변화2의 경우, 새로 추가된 테이블의 복구를 생략한다.
3. 변화3의 경우, 백업본중의 개명된 테이블을 새로운 버전의 데이터베이스의 개명된 테이블에 복구시킨다.
4. 변화4의 경우, 삭제된 열의 복구를 생략한다.
5. 변화5의 경우, 디폴트 값을 사전에 설정하였으면 새로 추가된 열을 디폴트 값으로 설정하고 디폴트 값이 사전에 설정되지 않았으면 새로 추가된 열을 NULL 값 혹은 지시한 값으로 설정하고, 혹은 새로 추가된 열의 복구를 생략한다.
6. 변화6의 경우, 백업본중의 개명된 열을 새로운 버전의 데이터베이스중의 개명된 열에 복구시킨다.
7. 변화7의 경우, 새로운 순서에 따라 백업본중의 열을 새로운 버전의 데이터베이스중의 열에 복구시킨다.
8. 변화8의 경우, 백업본의 열의 값을 새로운 데이터 유형으로 변환시킨 후 새로운 버전의 데이터베이스중의 열에 복구시키는데, 변환시킬 수 없으면 새로운 버전의 데이터베이스중의 열을 지정된 값으로 복구시킨다.
상기한 바와 같은 호환 처리를 수행하므로서 새로운 버전의 데이터베이스와 기존 버전의 데이터베이스의 구조 설계의 8가지 변화에 적응할 수 있고 데이터베이스 백업본 복구의 전향호환을 실현하고 많은 상황에 응용할 수 있다.
상기 방법이 XML 파일을 사전에 작성하고 XML 파일을 분석하므로서 기존 버전의 데이터베이스의 백업본을 새로운 버전의 데이터베이스에 복구시키는 단계를 더 포함하는 것이 바람직한데, 그중, XML 파일에 사전에 설정된 대책3, 5, 6, 8 중의 최소한 하나를 수행하는 규칙이 포함된다. 사전에 설정된 대책3, 5, 6, 8이 비교적 특수하여 사용자 설정에 영활하게 적응하여야 하므로 프로그램에 직접 고정시킬 수 없다. 하지만 XML 파일은 사용자가 간단히 편집할 수 있으므로 사전에 설정된 대책3, 5, 6, 8을 수행하는 규칙을 배치하기에 적합하다.
XML 파일에 하기 규칙중의 최소한 하나가 포함된다.
열 수정 규칙: 새로운 버전의 데이터베이스중의 지정된 열의 값을 디폴트 값으로 설정하도록 지시한다.
열 삭제 규칙: 새로운 버전의 데이터베이스중의 지정된 열의 값을 NULL 값으로 설정하도록 지시한다.
테이블 수정 규칙: 새로운 버전의 데이터베이스의 테이블중의 다수의 열에 열 수정 규칙과 열 삭제 규칙의 조합을 적용하도록 지시한다.
후처리 규칙: 백업본을 새로운 버전의 데이터베이스에 복구시킨것에 기반하여 SQL 어구의 수행 혹은 전문적인 코드 세그먼트를 통하여 새로운 버전의 데이터베이스중의 데이터를 수정하도록 지시한다.
일부 상황에 있어서, 새로운 버전의 데이터베이스의 구조는 변화되지 않았지만 사용자가 새로운 버전의 데이터베이스중의 테이블 컨텐츠를 자유롭게 설정하고 싶어하고, 즉 백업본중의 컨텐츠를 새로운 버전의 데이터베이스에 직접 복구시키지 않고 복구 과정에 있어서 컨텐츠를 개변시키고 싶어 한다. 본 실시예에 의하면 XML 파일에 상기한 규칙을 배치하므로서 사용자의 상기 요구를 만족시킬 수 있게 된다.
상기 방법이 수행 프로그램을 사전에 작성하고 그 프로그램을 수행하므로서 사전에 설정된 대책 1, 2, 4, 7의 규칙중의 최소한 하나를 수행하는 단계를 더 포함하는 것이 바람직하다. 사전에 설정된 대책 1, 2, 4와 7이 비교적 간단하여 사용자가 배치할 필요가 없으므로 프로그램에 직접 기록하여 사용자의 작업 부담을 감소하고 수행 속도를 향상시킬 수 있다.
bcp(block copy, 블록 복사) 방식을 통하여 기존 버전의 데이터베이스의 백업본을 새로운 버전의 데이터베이스에 복구시키는 것이 바람직하다. 이로하여 백업본 복구 속도를 향상시킬 수 있다.
테이블 구조의 정보가 데이터베이스 이름, 테이블 이름, 열 이름, 열 길이와 열 데이터 유형을 포함하는 것이 바람직하다. 이러한 정보를 이용하여 새로운 버전과 기존 버전의 데이터베이스의 구조가 변화하였는가를 간단히 판단할 수 있다.
도3은 본 발명의 바람직한 실시예에 따른 데이터베이스 백업본 복구 방법을 나타낸 흐름도이고, 이 바람직한 실시예는 상기 다수의 실시예의 기술사상을 종합하였는데, 하기와 같은 단계를 포함한다.
1. 기존 버전에 있어서 백업 작업을 수행하여 백업해야 할 모든 테이블의 구조 정보, 테이블 데이터와 현재 버전 번호를 파일로 도출하여 단독적인 폴더에 통일적으로 넣어둔다.
2. 새로운 버전을 대상으로 특수한 복구 대책 XML 배치 파일을 작성하고 인위적 간섭이 필요한 모든 처리 단계를 특정된 규칙으로하여 XML 배치 파일에 기록한다. 모든 차이점이 백업본 복구 프로그램이 자동적으로 식별할 수 있는 상황이면 그 XML 배치 파일을 공백으로 설정할 수 있다. 백업 폴더를 새 버전의 소프트웨어에 카피해두고 복구 작업을 시작한다.
3. 새로운 버전의 데이터베이스중의 모든 관련 테이블의 기록을 비우고 데이터베이스 이름, 테이블 이름, 포함된 모든 열 이름, 열 길이와 열 데이터 유형을 포함한 각 테이블의 구조 정보를 취득한다.
4. 백업본 폴더중의 모든 백업본의 관련 테이블 구조 정보를 판독하여 각 백업본 테이블을 차례로 처리하고 기존 버전의 테이블 구조와 새로운 버전의 테이블 구조의 차이점을 비교하며 XML 배치 파일에 특수 규칙이 사전에 설정되였는가를 판단한다.
5. 테이블 구조가 변화하였는가 및 특수 규칙을 제정하였는가를 판단한다. 판단결과가 YES이면 단계6을 수행하고 그렇지않으면 단계7을 수행한다.
6. 현재 백업본 테이블의 구조가 변화되지 않았고 XML 배치 파일에 특수 복구 대책이 지정되지 않았으면 bcp 방식을 이용하여 테이블 데이터 파일을 직접 도입하여 백업한 기록을 데이터베이스에 복구시킨다.
7. 현재 백업본 테이블의 구조가 변화되였고 혹은 XML 배치 파일에 특수 복구 대책이 지정되였으면 복구 프로그램은 특정된 규칙에 따라 호환 처리를 수행한다.
8. 모든 백업본 파일을 데이터베이스에 도입한 후 XML 배치 파일중의 SQL 규칙과 명령 코드 규칙을 검사한다. SQL 규칙이 없으면 복구 과정을 종결지을 수 있다.
9. SQL 규칙이 존재하면 그 유형의 규칙에 지정된 모든 SQL 어구를 차례로 수행하여 데이터베이스중의 데이터를 수정한다.
10. 마지막으로 XML 배치 파일중의 명령 코드 규칙을 검사하고 각 명령 코드에 대응되는 특정 코드를 차례로 수행하여 데이터베이스중의 데이터를 수정한다.
복구 작업을 종결짓는다.
이 실시예에 의하면 백업본 복구 프로그램과 특수 복구 대책 XML 배치 파일을 결합하는 방식을 통하여 데이터베이스 콘텐츠의 각종 호환성 문제를 해결한다. XML 파일의 규칙을 적당히 조절하면 많은 상황에 이용할 수 있다. 이와 동시에, bcp 도입 도출 방식을 이용하여 백업본 복구의 속도를 향상시킬 수 있다.
도4는 본 발명의 실시예에 따른 데이터베이스 백업본 복구 장치를 나타낸 도이다. 상기 장치는 기존 버전의 데이터베이스의 테이블 구조를 보존하고 기존 버전의 데이터베이스를 백업하는 백업블록10과, 새로운 버전의 데이터베이스의 모든 테이블의 기록을 비우고 새로운 버전의 데이터베이스의 테이블 구조를 취득하는 취득블록20과, 기존 버전의 데이터베이스의 테이블 구조와 새로운 버전의 데이터베이스의 테이블 구조를 비교하여 테이블 구조에 변화가 발생하였는가를 판단하는 비교블록30과, 변화의 유형 및 대응되는 사전에 설정된 대책에 근거하여 기존 버전의 데이터베이스의 백업본을 새로운 버전의 데이터베이스에 복구시키는 복구블록40을 포함한다.
상기 실시예에 의하면 테이블 구조의 변화를 분석하므로서 기존기술에 있어서 백업한 기존 버전의 데이터베이스를 데이터베이스 구조 설계가 변화된 새로운 버전의 데이터베이스에 복구시킬 수 없는 문제를 해결하고 데이터베이스 백업본 복구의 전향호환을 실현하였다.
비교블록30이 테이블 구조에 변화가 발생하였는가를 판단하는 것이 새로운 버전의 데이터베이스의 테이블 구조에 하기 변화중 최소한 하나가 발생하였음을 확정하는 것을 포함한다.
새로운 버전의 데이터베이스에 있어서 테이블을 삭제하였다.
새로운 버전의 데이터베이스에 있어서 테이블을 추가하였다.
새로운 버전의 데이터베이스중의 테이블 개명하였다.
새로운 버전의 데이터베이스중의 테이블에 있어서 열을 삭제하였다.
새로운 버전의 데이터베이스중의 테이블에 있어서 열을 추가하였다.
새로운 버전의 데이터베이스의 테이블중의 열을 개명하였다.
새로운 버전의 데이터베이스의 테이블중의 열의 순서가 변화하였다.
새로운 버전의 데이터베이스의 테이블중의 열의 데이터 유형이 변화하였다.
상기 8가지 변화는 테이블 구조의 비교를 통하여 간단히 식별할 수 있다.
상기 장치에 있어서 대응되는 사전에 설정된 대책이 하기 대책중 최소한 하나를 포함하는 것이 바람직하다.
변화1의 경우, 삭제된 테이블의 복구를 생략한다.
변화2의 경우, 새로 추가된 테이블의 복구를 생략한다.
변화3의 경우, 백업본중의 개명된 테이블을 새로운 버전의 데이터베이스중의 개명된 테이블에 복구시킨다.
변화4의 경우, 삭제된 열의 복구를 생략한다.
변화5의 경우, 디폴트 값을 사전에 설정하였으면 새로 추가된 열을 디폴트 값으로 설정하고 디폴트 값을 사전에 설정하지 않았으면 새로 추가된 열을 NULL 값 혹은 지시한 값으로 설정하며, 혹은 새로 추가된 열의 복구를 생략한다.
변화6의 경우, 백업본중의 개명된 열을 새로운 버전의 데이터베이스의 개명된 열에 복구시킨다.
변화7의 경우, 새로운 순서에 따라 백업본중의 열을 새로운 버전의 데이터베이스중의 열에 복구시킨다.
변화8의 경우, 백업본중의 열의 값을 새로운 데이터 유형으로 변환시킨 후 새 버전의 데이터베이스중의 열에 복구시키는데, 변환을 수행할 수 없으면 새로운 버전의 데이터베이스중의 열을 지정된 값으로 복구시킨다.
상기 호환 처리를 수행하므로서 기존 버전과 새로운 버전의 데이터베이스의 구조 설계의 8가지 변화에 적응할 수 있고 데이터베이스 백업본 복구의 전향호환을 실현하고 많은 상황에 응용할 수 있다.
상기한 바와 같이 본 발명에 의하면 데이터베이스 컨텐츠를 기존 버전의 소프트웨어 환경으로부터 새로운 버전의 소프트웨어 환경으로 고속으로 복구시킬 수 있고 데이터베이스의 구조 변화로 인한 호환성 문제를 해결할 수 있다. 서로 다른 데이터베이스 구조의 차이점에 대하여 XML 배치 파일을 간단히 수정하면 전향호환의 백업본 복구 요구를 만족시킬 수 있다.
당업자라면 상기한 본 발명의 각 블록 혹은 각 단계를 일반 계산장치를 통하여 실현할 수 있고 단일 계산장치에 집중시키거나 혹은 다수의 계산장치로 구성된 네트워크에 분포시킬수 있고, 또한 계산장치가 실행할 수 있는 프로그램 코드로 실현할 수 도 있으므로, 기억장치에 기억하여 계산장치에 실행시키거나 혹은 각각 집적회로 블록으로 만들거나 혹은 그중의 다수의 블록 혹은 단계를 하나의 집적회로 블록으로 만들어 실현할 수 도 있음을 알수 있다. 따라서 본 발명은 특정된 하드웨어와 소프트웨어의 결합에 한정되지 않는다.
상기한 내용은 본 발명의 바람직한 실시예로, 본 발명을 한정하는 것이 아니다. 당업자라면 본 발명에 여러가지 변화를 가져올 수 있다. 본 발명의 정신과 원칙을 벗어나지 않는 범위내에서 수행하는 모든 수정, 동등교체, 개량 등은 본 발명의 보호 범위에 속한다.

Claims (11)

  1. 기존 버전의 데이터베이스의 테이블 구조를 보존하고 상기 기존 버전의 데이터베이스를 백업하는 단계와,
    새로운 버전의 데이터베이스의 테이블 구조를 취득하는 단계와,
    상기 기존 버전의 데이터베이스의 테이블 구조와 상기 새로운 버전의 데이터베이스의 테이블 구조를 비교하여 테이블 구조에 변화가 발생하였는가를 판단하는 단계와,
    판단한 상기 테이블 구조의 변화의 유형 및 대응되는 사전에 설정된 대책에 근거하여 상기 기존 버전의 데이터베이스의 백업본을 상기 새로운 버전의 데이터베이스에 복구시키는 단계를 포함하는 것을 특징으로 하는 데이터베이스 백업본 복구 방법.
  2. 제1항에 있어서,
    테이블 구조의 변화를 확정하는 것이 상기 새로운 버전의 데이터베이스의 테이블 구조가
    상기 새로운 버전의 데이터베이스에 있어서 테이블을 삭제한 변화 1,
    상기 새로운 버전의 데이터베이스에 있어서 테이블을 추가한 변화 2,
    상기 새로운 버전의 데이터베이스 중의 테이블이 개명된 변화 3,
    상기 새로운 버전의 데이터베이스 중의 테이블에 있어서 열을 삭제한 변화 4,
    상기 새로운 버전의 데이터베이스 중의 테이블에 있어서 열을 추가한 변화 5,
    상기 새로운 버전의 데이터베이스 중의 테이블에 있어서 열이 개명된 변화 6,
    상기 새로운 버전의 데이터베이스의 테이블 중의 열의 순서가 변화된 변화 7,
    상기 새로운 버전의 데이터베이스의 테이블 중의 열의 데이터 유형이 변화된 변화 8
    중 최소한 한가지 변화가 발생하였음을 확정하는 것임을 특징으로 하는 데이터베이스 백업본 복구 방법.
  3. 제2항에 있어서,
    상기 대응되는 사전에 설정된 대책이
    변화 1의 경우, 상기 삭제된 테이블의 복구를 생략하는 대책 1,
    변화 2의 경우, 상기 새로 추가된 테이블의 복구를 생략하는 대책 2,
    변화 3의 경우, 상기 백업본 중의 개명된 테이블을 상기 새로운 버전의 데이터베이스의 상기 개명된 테이블에 복구시키는 대책 3,
    변화 4의 경우, 상기 삭제된 열의 복구를 생략하는 대책 4,
    변화 5의 경우, 디폴트 값을 사전에 설정하였으면 상기 새로 추가된 열을 상기 디폴트 값으로 설정하고 디폴트 값이 사전에 설정되지 않았으면 상기 새로 추가된 열을 NULL 값 혹은 지시한 값으로 설정하고, 혹은 상기 새로 추가된 열의 복구를 생략하는 대책 5,
    변화 6의 경우, 상기 백업본 중의 개명된 열을 상기 새로운 버전의 데이터베이스 중의 상기 개명된 열에 복구시키는 대책 6,
    변화 7의 경우, 상기 새로운 순서에 따라 상기 백업본 중의 열을 상기 새로운 버전의 데이터베이스 중의 열에 복구시키는 대책 7,
    변화 8의 경우, 상기 백업본의 열의 값을 상기 새로운 데이터 유형으로 변환시킨 후 상기 새로운 버전의 데이터베이스 중의 열에 복구시키는데, 변환시킬 수 없으면 상기 새로운 버전의 데이터베이스 중의 열을 지정된 값으로 복구시키는 대책 8
    중 최소한 하나를 포함하는 것을 특징으로 하는 데이터베이스 백업본 복구 방법.
  4. 제3항에 있어서,
    상기 사전에 설정된 대책 3, 5, 6, 8중의 최소한 하나를 수행하는 규칙이 포함된 배치 파일을 사전에 작성하고 상기 배치 파일을 분석하므로서 상기 기존 버전의 데이터베이스의 백업본을 상기 새로운 버전의 데이터베이스에 복구시키는 단계를 더 포함하는 것을 특징으로 하는 데이터베이스 백업본 복구 방법.
  5. 제4항에 있어서,
    상기 배치 파일이
    상기 새로운 버전의 데이터베이스 중의 지정된 열의 값을 디폴트 값으로 설정하도록 지시하는 열 수정 규칙과,
    상기 새로운 버전의 데이터베이스 중의 지정된 열의 값을 NULL 값으로 설정하도록 지시하는 열 삭제 규칙과,
    상기 새로운 버전의 데이터베이스의 테이블 중의 다수의 열에 상기 열 수정 규칙과 상기 열 삭제 규칙의 조합을 적용하도록 지시하는 테이블 수정 규칙과,
    상기 백업본을 상기 새로운 버전의 데이터베이스에 복구시킨 것에 기반하여 SQL 어구의 수행 혹은 상기 새로운 버전의 데이터베이스 중의 데이터를 수정하는데 이용되는 전문적인 코드 세그먼트를 통하여 상기 새로운 버전의 데이터베이스 중의 데이터를 수정하도록 지시하는 후처리 규칙 중 최소한 하나를 포함하는 것을 특징으로 하는 데이터베이스 백업본 복구 방법.
  6. 제3항에 있어서,
    사전에 수행 프로그램을 작성하고 상기 수행 프로그램을 통하여 상기 사전에 설정된 대책 1, 2, 4, 7 중 최소한 하나의 규칙을 수행하는 것을 특징으로 하는 데이터베이스 백업본 복구 방법.
  7. 제1항에 있어서,
    블록 복사bcp 방식을 통하여 상기 기존 버전의 데이터베이스의 상기 백업본을 상기 새로운 버전의 데이터베이스에 복구시키는 것을 특징으로 하는 데이터베이스 백업본 복구 방법.
  8. 제1항에 있어서,
    상기 테이블 구조의 정보가 데이터베이스 이름과, 테이블 이름과, 열 이름과, 열 길이와, 열 데이터 유형을 포함하는 것을 특징으로 하는 데이터베이스 백업본 복구 방법.
  9. 기존 버전의 데이터베이스를 백업하고 상기 기존 버전의 데이터베이스의 테이블 구조를 보존하는 백업블록과,
    새로운 버전의 데이터베이스의 모든 테이블의 기록을 비우고 상기 새로운 버전의 데이터베이스의 테이블 구조를 취득하는 취득블록과,
    상기 기존 버전의 데이터베이스의 테이블 구조와 상기 새로운 버전의 데이터베이스의 테이블 구조를 비교하여 테이블 구조에 변화가 발생하였는가를 판단하는 비교블록과,
    판단한 상기 테이블 구조의 변화의 유형 및 대응되는 사전에 설정된 대책에 근거하여 상기 기존 버전의 데이터베이스의 백업본을 상기 새로운 버전의 데이터베이스에 복구시키는 복구블록을 포함하는 것을 특징으로 하는 데이터베이스 백업본 복구 장치.
  10. 제9항에 있어서,
    상기 비교블록이 테이블 구조의 변화를 확정하는 것이 상기 새로운 버전의 데이터베이스의 테이블 구조가
    상기 새로운 버전의 데이터베이스에 있어서 테이블을 삭제한 변화 1,
    상기 새로운 버전의 데이터베이스에 있어서 테이블을 추가한 변화 2,
    상기 새로운 버전의 데이터베이스중의 테이블이 개명된 변화 3,
    상기 새로운 버전의 데이터베이스중의 테이블에 있어서 열을 삭제한 변화 4,
    상기 새로운 버전의 데이터베이스중의 테이블에 있어서 열을 추가한 변화 5,
    상기 새로운 버전의 데이터베이스중의 테이블에 있어서 열이 개명된 변화 6,
    상기 새로운 버전의 데이터베이스의 테이블중의 열의 순서가 변화된 변화 7,
    상기 새로운 버전의 데이터베이스의 테이블중의 열의 데이터 유형이 변화된변화 8
    중 최소한 한가지 변화가 발생하였음을 확정하는 것임을 특징으로 하는 데이터베이스 백업본 복구 장치.
  11. 제10항에 있어서,
    상기 대응되는 사전에 설정된 대책이
    변화 1의 경우, 상기 삭제된 테이블의 복구를 생략하는 대책 1,
    변화 2의 경우, 상기 새로 추가된 테이블의 복구를 생략하는 대책 2,
    변화 3의 경우, 상기 백업본 중의 개명된 테이블을 상기 새로운 버전의 데이터베이스의 상기 개명된 테이블에 복구시키는 대책 3,
    변화 4의 경우, 상기 삭제된 열의 복구를 생략하는 대책 4,
    변화 5의 경우, 디폴트 값을 사전에 설정하였으면 상기 새로 추가된 열을 상기 디폴트 값으로 설정하고 디폴트 값이 사전에 설정되지 않았으면 상기 새로 추가된 열을 NULL 값 혹은 지시한 값으로 설정하고, 혹은 상기 새로 추가된 열의 복구를 생략하는 대책 5,
    변화 6의 경우, 상기 백업본 중의 개명된 열을 상기 새로운 버전의 데이터베이스 중의 상기 개명된 열에 복구시키는 대책 6,
    변화 7의 경우, 상기 새로운 순서에 따라 상기 백업본 중의 열을 상기 새로운 버전의 데이터베이스 중의 열에 복구시키는 대책 7,
    변화 8의 경우, 상기 백업본의 열의 값을 상기 새로운 데이터 유형으로 변환시킨 후 상기 새로운 버전의 데이터베이스 중의 열에 복구시키는데, 변환시킬 수 없으면 상기 새로운 버전의 데이터베이스 중의 열을 지정된 값으로 복구시키는 대책 8
    중 최소한 하나를 포함하는 것을 특징으로 하는 데이터베이스 백업본 복구 장치.
KR1020127010761A 2010-07-20 2010-11-22 데이터베이스 백업본 복구 방법 및 그 장치 KR101556435B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN2010102339248A CN101908064A (zh) 2010-07-20 2010-07-20 数据库备份恢复方法和装置
CN201010233924.8 2010-07-20
PCT/CN2010/078972 WO2012009913A1 (zh) 2010-07-20 2010-11-22 数据库备份恢复方法和装置

Publications (2)

Publication Number Publication Date
KR20130095170A KR20130095170A (ko) 2013-08-27
KR101556435B1 true KR101556435B1 (ko) 2015-10-01

Family

ID=43263524

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127010761A KR101556435B1 (ko) 2010-07-20 2010-11-22 데이터베이스 백업본 복구 방법 및 그 장치

Country Status (8)

Country Link
US (1) US20130024427A1 (ko)
EP (1) EP2597579B1 (ko)
JP (1) JP2013531321A (ko)
KR (1) KR101556435B1 (ko)
CN (1) CN101908064A (ko)
AU (1) AU2010357942A1 (ko)
RU (1) RU2565109C2 (ko)
WO (1) WO2012009913A1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8516506B2 (en) * 2011-03-29 2013-08-20 Denso International America, Inc. Method and system for restoring an application in a dynamically linked environment
CN102739703A (zh) * 2011-04-02 2012-10-17 中兴通讯股份有限公司 一种对等网络中数据迁移的方法及系统
JP5720531B2 (ja) * 2011-10-31 2015-05-20 富士通株式会社 ヘルプ作成支援装置、ヘルプ作成支援プログラムおよびヘルプ作成支援方法
CN103914458A (zh) * 2012-12-29 2014-07-09 中国移动通信集团河北有限公司 一种海量数据迁移的方法及装置
US9110601B2 (en) 2013-06-24 2015-08-18 Sap Se Backup lifecycle management
CN103810257B (zh) * 2014-01-24 2018-07-13 华为技术有限公司 一种升级软件数据库的方法、装置及设备
CN104376073A (zh) * 2014-11-14 2015-02-25 北京锐安科技有限公司 一种数据库恢复方法及装置
US11892913B2 (en) * 2015-01-05 2024-02-06 Rubrik, Inc. Data lineage based multi-data store recovery
CN104679883A (zh) * 2015-03-17 2015-06-03 浪潮通信信息系统有限公司 一种利用分区置换实现数据快速归档降存储空间的方法
CN105068887B (zh) * 2015-08-03 2019-02-12 四川效率源信息安全技术股份有限公司 一种基于被损坏SQLServer数据库的数据恢复方法
CN105068888B (zh) * 2015-08-03 2018-08-14 四川效率源信息安全技术股份有限公司 一种基于Oracle数据库的数据恢复方法
KR102464235B1 (ko) * 2016-03-31 2022-11-04 엘에스일렉트릭(주) 이중화 ems 서버의 db 관리 방법
RU2634216C1 (ru) * 2016-06-07 2017-10-24 Общество с ограниченной ответственностью "ЛАН-ПРОЕКТ" Способ восстановления информационного состояния устройств хранения данных
CN107644030B (zh) * 2016-07-20 2021-05-18 华为技术有限公司 分布式数据库数据同步方法、相关装置及系统
US10705926B2 (en) * 2016-07-29 2020-07-07 Rubrik, Inc. Data protection and recovery across relational and non-relational databases
CN110019507B (zh) * 2017-09-21 2021-06-08 北京国双科技有限公司 数据同步的方法及装置
CN109582504A (zh) * 2018-12-05 2019-04-05 深圳软牛科技有限公司 一种用于苹果设备的数据恢复方法和装置
EP3696707B1 (en) * 2019-02-15 2021-07-14 MasterCard International Incorporated A computer-implemented method for removing access to data
CN110489432B (zh) * 2019-07-10 2023-06-20 厦门安盟网络股份有限公司 基于模型的数据库自动同步方法、介质、设备及装置
US11544215B2 (en) * 2019-09-05 2023-01-03 Visa International Service Association System, method, and computer program product for generating a file structure
CN112925743A (zh) * 2021-02-07 2021-06-08 中国工商银行股份有限公司 一种文件生成方法、装置及存储介质
CN113051272A (zh) * 2021-03-30 2021-06-29 深圳红途创程科技有限公司 数据库表结构构建方法、装置、计算机设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050108486A1 (en) 2003-08-05 2005-05-19 Miklos Sandorfi Emulated storage system supporting instant volume restore

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2947111B2 (ja) * 1995-02-17 1999-09-13 日本電気株式会社 交換機のデータ引き継ぎ方法およびシステム
US6453325B1 (en) * 1995-05-24 2002-09-17 International Business Machines Corporation Method and means for backup and restoration of a database system linked to a system for filing data
US5717924A (en) * 1995-07-07 1998-02-10 Wall Data Incorporated Method and apparatus for modifying existing relational database schemas to reflect changes made in a corresponding object model
US5907849A (en) * 1997-05-29 1999-05-25 International Business Machines Corporation Method and system for recovery in a partitioned shared nothing database system using virtual share disks
JP2000066939A (ja) * 1998-08-18 2000-03-03 Advanced It:Kk バックアップデータ復元システムおよびバックアップデータ復元方法を記憶した記憶媒体
US7756818B1 (en) * 1999-07-07 2010-07-13 Computer Associates Think, Inc. Database table recovery system
JP2001184190A (ja) * 1999-12-24 2001-07-06 Nec Eng Ltd フォーマット変換装置及び方法
US7043504B1 (en) * 2000-04-10 2006-05-09 International Business Machines Corporation System and method for parallel primary and secondary backup reading in recovery of multiple shared database data sets
JP2001331354A (ja) * 2000-05-18 2001-11-30 Hitachi Ltd データ流通管理方法およびシステム
JP4392780B2 (ja) * 2001-07-10 2010-01-06 株式会社リコー データ格納処理方法、そのプログラム及び記憶媒体、並びに処理システム
JP2007527572A (ja) * 2003-09-30 2007-09-27 セパトン,インコーポレイテッド インスタントボリュームの復旧を支援するエミュレーティッドストレージシステム
CN1280761C (zh) * 2004-05-18 2006-10-18 中兴通讯股份有限公司 一种在通信设备中实现关系数据库自动升级的方法
JP2006004145A (ja) * 2004-06-17 2006-01-05 Ul Systems Inc プログラムコード生成装置
CN1329829C (zh) * 2004-11-29 2007-08-01 中兴通讯股份有限公司 一种用户数据库的备份恢复方法
US20060195436A1 (en) * 2005-02-28 2006-08-31 Fujitsu Network Communications, Inc. Phased migration of database software application
CN100517229C (zh) * 2006-10-31 2009-07-22 中兴通讯股份有限公司 数据版本升级方法
CN100570604C (zh) * 2006-11-13 2009-12-16 中兴通讯股份有限公司 一种关系数据库应用自动升级的方法
CN101499069B (zh) * 2008-02-02 2013-06-05 中兴通讯股份有限公司 内存数据库文件的更新方法及更新装置
US9501368B2 (en) * 2008-09-30 2016-11-22 Veritas Technologies Llc Backing up and restoring selected versioned objects from a monolithic database backup

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050108486A1 (en) 2003-08-05 2005-05-19 Miklos Sandorfi Emulated storage system supporting instant volume restore

Also Published As

Publication number Publication date
EP2597579B1 (en) 2016-07-20
WO2012009913A1 (zh) 2012-01-26
RU2565109C2 (ru) 2015-10-20
AU2010357942A1 (en) 2012-10-04
KR20130095170A (ko) 2013-08-27
RU2012142554A (ru) 2014-09-20
EP2597579A1 (en) 2013-05-29
CN101908064A (zh) 2010-12-08
EP2597579A4 (en) 2015-03-04
JP2013531321A (ja) 2013-08-01
US20130024427A1 (en) 2013-01-24

Similar Documents

Publication Publication Date Title
KR101556435B1 (ko) 데이터베이스 백업본 복구 방법 및 그 장치
US7606842B2 (en) Method of merging a clone file system with an original file system
US7386752B1 (en) Using asset dependencies to identify the recovery set and optionally automate and/or optimize the recovery
US8392423B2 (en) Data set index record preservation
US20150066857A1 (en) Replication of snapshots and clones
US20140089266A1 (en) Information processing system
US10013424B2 (en) Efficient building of restore list
CN105573859A (zh) 一种数据库的数据恢复方法和设备
CN107545015B (zh) 一种查询故障的处理方法及处理装置
CN107479881B (zh) 差异代码的同步方法、存储介质、电子设备及系统
JP2006018796A (ja) データ処理方法および装置並びにストレージ装置およびその処理プログラム
US20110321063A1 (en) Application settings migration using virtualization
CN109558213A (zh) 管理OpenStack平台的虚拟机快照的方法和装置
JPH11134235A (ja) 外部記憶装置故障時の回復支援方法
US8667035B2 (en) Method of converting a filesystem while the filesystem remains in an active state
WO2020244445A1 (zh) 一种覆盖信息获取方法及装置
US9483485B1 (en) Restore database from backup system where full and incremental backups are performed simultaneously
US20140258228A1 (en) Performing persistent undo and redo operation within computer software
US7801859B1 (en) Tracking filesystem backups
US20080270493A1 (en) System for automatically replicating a customer's personalized computer system image on a new computer system
CN108984343B (zh) 一种基于内容分析的虚拟机备份及存储管理方法
CN111221801A (zh) 一种数据库迁移方法、系统及相关装置
CN112612648B (zh) 一种SQL Server数据库恢复方法、终端设备及存储介质
JP2000148562A (ja) データバックアップ方法及びこれを利用したデータバックアップ装置並びにデータバックアッププログラムを記録したコンピュータ読み取り可能な記録媒体
JP2007226733A (ja) データベースの正常性チェック方法、正常性チェックプログラム、および正常性チェック装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180927

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190919

Year of fee payment: 5