1

我有一个 Berkeley DB 文件,它的记录中有一些数据已损坏。

记录包含 xml 且 xml 标记不正确。

在其中一项记录中包含:

"<modifications></modificatio"

我如何编辑此记录以解决此问题

"<modifications></modifications>"
4

1 回答 1

1

Berkeley 数据库文件是一个二进制文件,其中包含由应用程序放置在那里的数据库记录。

您通常会首先使用您用来生成文件的任何工具“编辑”文件。如果这对您不可用,最简单的解决方案可能是使用db_dumpanddb_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
于 2012-05-14T22:28:40.230 回答