我正在尝试从本地比特币数据库中提取数据。据我所知,bitcoin-qt 正在使用 BerkeleyDB。我已经从 Oracle 网站安装了 Berkley db,并在这里找到了 .NET 的 dll:libdb_dotnet60.dll
.我正在尝试打开任何文件,但出现 DatabaseException。这是我的代码:
using BerkeleyDB;
class Program
{
static void Main(string[] args)
{
var btreeConfig = new BTreeDatabaseConfig();
var btreeDb = BTreeDatabase.Open(@"c:\Users\<user>\AppData\Roaming\Bitcoin\blocks\blk00000.dat", btreeConfig);
}
}
有没有人有如何使用比特币数据库的例子(任何其他语言)?
最佳答案
你想提取什么?只有 wallet.dat 文件是 Berkeley 数据库。
块一个接一个地存储在 blkxxxxx.dat 文件中,四个字节代表网络标识符,四个字节给出块大小,在每个块之前。
存储为 leveldb 数据库的未花费输出的索引。
了解您正在寻找的信息类型会有所帮助。
关于berkeley-db - 如何打开本地比特币数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20442704/