2012-05-14 2 views
1

손상된 레코드에 일부 데이터가있는 Berkeley DB 파일이 있습니다.Berkeley DB 파일에서 잘못된 XML 태그를 수정하는 방법

레코드에 xml이 들어 있고 xml 태그가 올바르지 않습니다. 내가

"<modifications></modifications>" 
+1

귀하의 버클리 DB 파일이 손상되지 (제목이 시사하는 것입니다). 이 xml 레코드에 대해 * 구체적으로 * 잘못된 것에 대한 자세한 내용을 질문에 편집하십시오. – ChristopheD

+0

실력이 더 구체적이기를 바랍니다. – Brambo76

+1

파일의 크기는 얼마나 큽니까? 단순히 세 문자가 누락 된 경우 편집자의 찾기 및 바꾸기 명령을 대화식으로 사용하여 파일을 수정할 수 있습니다. – Levon

답변

1

버클리 데이터베이스 파일에서이 문제를 해결하는이 레코드를 편집 할 수있는 방법

"<modifications></modificatio" 

배치 된 데이터베이스 레코드를 포함하는 이진 파일입니다 : 기록 중 하나에서

는 포함 거기에 응용 프로그램.

일반적으로 파일을 생성하는 데 사용한 도구를 사용하여 파일을 "편집"합니다. 사용할 수없는 경우 가장 쉬운 해결책은 db_dumpdb_load 명령을 사용하는 것입니다.

db_dump 명령은 다음과 같이 텍스트 형식으로 데이터베이스를 변환 :

$ db_dump my_broken_database 
format=print 
type=hash 
h_nelem=77 
db_pagesize=4096 
HEADER=END 
key1\00 
this is a value\00 
key2\00 
this is another value\00 
DATA=END 
당신은 파일이 덤프 수

...

$ db_dump my_broken_database > data.txt 

... 그리고 이것을 수정하려면 좋아하는 텍스트 편집기. 수정이 끝나면, 데이터베이스를 다시 생성 db_load에 공급 :

$ db_load my_fixed_database < data.txt 
관련 문제