2015-01-12 4 views
0

H2 (TCP) 기반 응용 프로그램을 개발 중이며 단추를 클릭 할 때 백업 파일을 사용하는 기능을 만들었습니다. H2 백업이 손상되지 않았는지 확인하십시오.

나는 온라인 백업을 수행 할 수

BACKUP TO '<FILENAME>' 

명령을 사용했다. 나는 그것을 테스트했고 작동하지만 매우 드물게 백업이 손상되었습니다.

H2에 백업 파일이 손상되었는지 확인하는 API가 있습니까? 백업 zip 파일을로드 한 다음 모든 테이블에서 쿼리를 계산하고 화면에 표시 할 생각입니다.

답변

1

토마스 (H2 작성자)가 확인하기 전에 가장 빠른 방법으로 연결이 이루어지고 있습니다. 데이터가 손상되었는지 확인하려면 백업 및 복원이 권장됩니다. 현재 현재 API 또는 도구가 없습니다. 토마스에서

: 나는 ~ DB1 백업이있는 경우

There is a small risk that the database file exists, but not fully initialized. If that is the case, 
then some of the tables don't exist. The standard way to verify all tables exists is to us 
DatabaseMetaData.getTables. 
+0

, 나는 검증에 ~ DB2를 복원 할 수 있습니다? – javapadawan

+0

귀하의 요구 사항을 정말로 이해하지 못합니까? DB1.mv.db를 DB2.mv.db로 백업하고 복원 하시겠습니까? –

+0

좋아요. 전에 백업 파일을 신뢰함으로써 불타 버렸습니다. 내가 BACKUP TO 명령을 수행하고 일부 사용자가 잘못된 데이터를 삭제했습니다. 이전 버전을 복원하는 것만으로 생각했습니다. 현재의 db를 백업 zip 파일에 겹쳐 쓰십시오. 그러나로드 할 때 공백이로드되었습니다. 그래서, 당신이 말한 이후로 백업 및 복구를 수행하는 것입니다, 내가 그랬다면, 그리고 내가 생성 한 백업이 손상되었습니다, 나는 나쁜 파일을 복원하는 것입니다. 그리고 나는 회복 할 수 없을 것이다. 그래서 별도의 DB 이름에 백업 무결성을 확인해야하므로 손상된 경우 현재 데이터가 손상되지 않습니다. – javapadawan

관련 문제