본문 바로가기

DBMS/MaxDB

[MaxDB] 데이터베이스 백업

반응형

개요

 

구성환경

MaxDB 7.9.10, CentOS 7.6

 

1. 백업 템플릿 생성

SYNTAX) 

medium_put <medium_name> <location> <type> <backup_type> [<size> [<block_size> [<overwrite> [<autoloader> [<os_command> [<tool_type>]]]]]]

 -  backup_type : 전체 백업의 경우 DATA, 증분 백업의 경우 PAGES, 대화 형 로그 백업의 경우 LOG, 자동 로그 백업의 경우 AUTO를 입력합니다.

참고 : http://remote-database.com/00011088/d1b3866c4dc211d4aa1100a0c9430730.html

예제) DATA 백업

shell> dbmcli -d MaxDB -u dbm,dbm
dbmcli on maxdb> medium_put DATA_BK1 /maxdb_bk/DAT001 FILE DATA 0 8 YES
OK 

--- 
dbmcli on maxdb>backup_template_show name DATA_BK1 => 백업 템플릿 조회
OK 
NAME                          DATA_BK1  
    CONTENT                   DATA 
    CREATIONDATE              20200903152751 
    MODIFICATIONDATE          20200903152751 
    TOOL                      NONE 
    BLOCKSIZE                 8 
    DATACARRIER 
        TYPE                  FILE 
        LOCATION              /maxdb_bk/DAT001  
        OVERWRITE             YES  
        COMPRESSED            NO 

--- 
dbmcli on maxdb>

* LOCATION 디렉토리 권한은 OS의 global user(일반적으로 sdb계정)에게 쓰기 권한이 부여 되어야함

 

2. 백업 실행

backup_start <medium_name> [<backup_type>] [AUTOIGNORE]

예)

dbmcli on maxdb>backup_start DATA_BK1
ERR
-24991,ERR_NODBSESSION: no database session available

---
dbmcli on maxdb>db_connect
OK

---
dbmcli on maxdb>backup_start DATA_BK1
OK
Returncode              0
Date                    20200903
Time                    00154914
Server                  testsvr1
Database                MAXDB
Kernel Version          Kernel    7.9.10   Build 003-123-265-343
Pages Transferred       392
Pages Left              0
Volumes                 1
Medianame               DATA_BK1
Location                /maxdb_bk/DAT001
Errortext
Label                   DAT_000000009
Is Consistent           true
First LOG Page          520
Last LOG Page
DB Stamp 1 Date         20200903
DB Stamp 1 Time         00154914
DB Stamp 2 Date
DB Stamp 2 Time
Page Count              372
Devices Used            1
Database ID             testsvr1:MAXDB_20200901_202456
Max Used Data Page      0
Converter Page Count    10

---
dbmcli on maxdb>

 

3. 로그 백업 템플릿 생성및 로그 백업 실행

dbmcli on maxdb>medium_put LOG_BK1 /maxdb_bk/LOG001 FILE LOG 
OK 

---
dbmcli on maxdb>backup_template_show name LOG_BK1
OK
NAME                          LOG_BK1
    CONTENT                   LOG
    CREATIONDATE              20200903212344
    MODIFICATIONDATE          20200903212344
    TOOL                      NONE
    BLOCKSIZE                 8
    DATACARRIER
        TYPE                  FILE
        LOCATION              /maxdb_bk/LOG001
        OVERWRITE             NO
        COMPRESSED            NO

---
dbmcli on maxdb>backup_start LOG_BK1 
ERR 
-24991,ERR_NODBSESSION: no database session available 

--- 
dbmcli on maxdb>db_connect 
OK 

--- 
dbmcli on maxdb>backup_start LOG_BK1 
OK 
Returncode              0 
Date                    20200903 
Time                    00201100 
Server                  testsvr1 
Database                MAXDB 
Kernel Version          Kernel    7.9.10   Build 003-123-265-343 
Pages Transferred       544 
Pages Left              0 
Volumes                 1 
Medianame               LOG_BK1 
Location                /maxdb_bk/LOG001.001 
Errortext 
Label                   LOG_000000001 
Is Consistent 
First LOG Page          0 
Last LOG Page           520 
DB Stamp 1 Date         20200901 
DB Stamp 1 Time         00202450 
DB Stamp 2 Date         20200903 
DB Stamp 2 Time         00154914 
Page Count              544 
Devices Used            1 
Database ID             testsvr1:MAXDB_20200901_202456 
Max Used Data Page 
Converter Page Count 

--- 
dbmcli on maxdb>

* 로그 백업시 아래와 같은 오류가 발생한다면

dbmcli on demodb>backup_start LOG_BK1
ERR
-24988,ERR_SQL: SQL error
-126,Databackup missing (Backuphistory lost)
20008,(AUTO)SAVE LOG has been aborted due to missing backup history

---
dbmcli on demodb>

log writing는 on, log auto overwrite는 off 로 변경한다. 또한 DATA 백업이 없을 경우에도 발생한다.

  a. log writing 활성화

dbmcli ...
     db_admin
     db_execute set log writer on
     db_online

 b. log auto overwrite 비활성화

dbmcli -d <databaseName> -u <dbm,dbm_password> db_execute set log auto overwrite off

확인)

sehll>  sqlcli -d demodb -u DBADMIN,SECRET

Welcome to the SAP MaxDB interactive terminal.

Type:  \h for help with commands
       \q to quit

sqlcli demodb=> select * from  db_state
| Log writing                              | ?                | on |
| Log automatic overwrite                  | ?                | off |

 c. 로그 자동 백업

autolog_on [<medium_name>] [INTERVAL <value>]

 - medium_name :  백업 템플릿 이름

 - INTERVAL : 단위 초

예) 1시간 단위로 로그 백업

dbmcli on demodb>autolog_show
OK
AUTOSAVE IS OFF

---
dbmcli on demodb> autolog_on LOG_BK1 INTERVAL 3600
OK

---
dbmcli on demodb> autolog_show
OK
AUTOSAVE IS ON

---
dbmcli on demodb> backup_template_show all
OK
................................
NAME                          LOG_BK1
    CONTENT                   AUTO
    CREATIONDATE              20200906092917
    MODIFICATIONDATE          20200906092917
    TOOL                      NONE
    BLOCKSIZE                 8
    BACKUPAUTOINTERVAL        3600
    DATACARRIER
        TYPE                  FILE
        LOCATION              /maxdb_bk/DEMOLOG1
        OVERWRITE             NO
        COMPRESSED            NO

.................................

* AUTO 유형의 백업 템플릿은 하나만있을 수 있습니다. 이 백업 유형에 대한 백업 템플릿이 이미 있고 AUTO 유형의 다른 미디어를 정의한 경우 시스템은 기존 미디어의 백업 유형을 LOG 백업 유형으로 변경합니다

 

4. 백업 템플릿 수정

예) DATA_BK1 템플릿의 Location(/maxdb_bk/DAT002로 변경), Overwrite(NO로 변경) 옵션 변경

dbmcli on maxdb>medium_put DATA_BK1 /maxdb_bk/DAT002 FILE DATA 0 8 NO 

 

5. 백업 템플릿 삭제

SYNTAX)

backup_template_delete <backup template name>

예) DATA_BK1 템플릿 삭제

dbmcli on maxdb>backup_template_delete DATA_BK1
OK

---
dbmcli on maxdb>

 

기타

backup_templete_create 를 이용한 백업 템플릿 생성

예) DATA 백업위치가 /maxdb_bk/DAT001에 위치하는 DATA_BK1 백업 템플릿 생성

backup_template_create DATA_BK1 to FILE /maxdb_bk/DAT001 CONTENT DATA

 

 

반응형

'DBMS > MaxDB' 카테고리의 다른 글

[MaxDB] 데이터베이스 확장  (0) 2020.09.04
[MaxDB] 백업 히스토리  (0) 2020.09.03
[MaxDB] 데이터베이스 사용자 관리  (0) 2020.09.02
[MaxDB] 기동 및 종료  (0) 2020.09.01
[MaxDB] 설치  (0) 2020.08.31