database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
ㆍDB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
DB2 Q&A 3557 게시물 읽기
No. 3557
Restore 이후 rollforward 관련 질문입니다.
작성자
김창식(DB2꿈나무)
작성일
2024-03-11 14:54
조회수
87

안녕하세요


온라인 full backup 이후 이미지 파일이 생기잖아요 그걸 이용해서 restore 까지는 성공했는데,


A DB를 full backup


B DB에 Restore 


그렇다면 full backup 시점 이후의 추가된 데이터(A DB)는 


B DB에 어떻게 집어 넣을 수  있을까요 ??


A DB에 있는 아카이브로그를 이용해서 rollforward 하면 되는가요 ? ? 


A DB에 데이터 추가 후에 아카이브로그를 가져다가 B DB에서 rollforward를 하였으나 추가된 데이터는 기입이 안되어 있더라구요


이런 경우에 그 사이 추가된 데이터는 어떻게 B DB에 넣을 수 있을까요 ? ?

이 글에 대한 댓글이 총 5건 있습니다.

end of logs 옵션으로 rollforward 해보세요~

정상규(pajama)님이 2024-03-11 15:43에 작성한 댓글입니다.

혹시 아카이브 로그 경로가 sample DB라고 쳤을 경우에 


db2 get db cfg for smaple


First log archive method                 (LOGARCHMETH1) = DISK:/home/db2inst/LOG/


이경로에 있는 /home/db2inst/LOG/db2inst/SAMPLE/NODE0000/LOGSTREAM0000/C0000001/


안에 있는 S000000x.LOG 로그가 맞나요 ?


아니면 C0000000에 있는 S000001.LOG 파일이 맞나요 ? ? ?


제가 rollforward 명령어는 


db2 rollforward db sample to end of logs and stop overflow log path '(/home/db2inst/backuplog)' 

(B DB 안에 backuplog 경로에 A DB의 로그파일을 옮겨놨어요)


현재는 아래의 경로에 있던 로그파일을 가지고 rollforward를 하였고

/C0000001/


                                Rollforward Status


 Input database alias                   = sample

 Number of members have returned status = 1


 Member ID                              = 0

 Rollforward status                     = DB  working

 Next log file to be read               = S0000259.LOG

 Log files processed                    =  -

 Last committed transaction             = 2024-03-11-05.04.02.000000 UTC


DB20000I  The ROLLFORWARD command completed successfully.


결과가 나왔어요


하지만, 아직 

[db2inst@localhost ~]$ db2 connect to sample

SQL1117N  A connection to or activation of database "SAMPLE" cannot be made

because of ROLL-FORWARD PENDING.  SQLSTATE=57019


롤 포워드 팬딩 상태입니다. 


 

김창식(DB2꿈나무)님이 2024-03-11 16:04에 작성한 댓글입니다.
이 댓글은 2024-03-11 16:06에 마지막으로 수정되었습니다.

이후 


[db2inst@localhost ~]$ db2 rollforward db sample to end of logs and stop overflow log path '(/home/db2inst/backuplog)'


                                 Rollforward Status


 Input database alias                   = sample

 Number of members have returned status = 1


 Member ID                              = 0

 Rollforward status                     = not pending

 Next log file to be read               =

 Log files processed                    =  -

 Last committed transaction             = 2024-03-11-05.04.02.000000 UTC


DB20000I  The ROLLFORWARD command completed successfully.


다시 입력하니 성공적으로 되었습니다.


하지만 DBeaver를 통해서 데이터를 조회해보면 


추가했던 테이블 및 기존 있던 테이블에 넣었던 데이터는 들어가 있지가 않습니다.


원인이 뭘까요 ? ? 

김창식(DB2꿈나무)님이 2024-03-11 16:09에 작성한 댓글입니다.

백업시점 이후에 변경된 데이터에 대한 액티브로그는 아직 아카이브 되지 않아서 그런게 아닐까요? 

A DB에서 최근 사용한 로그번호까지 아카이브 수행한 후 복사하여 롤포워드하면 될 듯합니다.

db2 archive log for database sample

정상규(pajama)님이 2024-03-12 21:09에 작성한 댓글입니다.

답변 감사합니다 ! 아카이브로그를 강제로 떨어뜨리는건 생각도 못했네요 ㅠㅠ ! 덕분에 해결됐습니당 !

김창식(DB2꿈나무)님이 2024-03-13 09:56에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
3560마이그레이선 가능 여부 확인문의 드립니다. [2]
우재
2024-03-13
85
3559db2 to db2 이관문의드립니다 [3]
우재
2024-03-13
87
3558대용량 데이터 조회시 병렬 옵션이 있을까요? [1]
전석
2024-03-12
80
3557Restore 이후 rollforward 관련 질문입니다. [5]
김창식
2024-03-11
87
3556load시 에러 발생 [3]
전석
2024-03-08
75
3555Db2에서 unload 하는방법을 알 수 있을까요? [2]
전석
2024-03-07
72
3554iDB2 xml 문자열에 한글 포함 오류 관련
굴개
2024-02-29
80
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다