ganache在哪里存储以太坊区块链

Where does ganache store the Ethereum blockchain

我实际上是在使用 truffle 和 Ganache 进行一些开发。

我想知道 Ganache 在哪里存储它的区块链以查看我的测试使用了多少数据。它是否存储在 PC 上可访问的某个位置?

我正在使用

TestRPC 过去只在内存中。他们最近才发布了对将区块链写入文件系统的支持。据我所知,内存实现仍然是默认行为。如果您想查找区块链文件,您可以使用 --db 选项自行指定位置。

来自他们的 release page(在 v4.0.0 下):

Because we backed the TestRPC via the filesystem, this means you can now save your blockchain's data for later use. That's right, if you close the TestRPC and reopen it later, say, you can start up right where you left off. You'll need to use the new --db option (see the README) to tell the TestRPC where you'd like the data saved. You'll also likely want to use the --mnemonic option to use the same accounts each time.

如果要使用--db,需要使用参数--mnemonic--networkId

示例: ganache-cli -p 7545 --mnemonic --networkId 100 --db .

参考:https://github.com/trufflesuite/ganache-cli/issues/407#issuecomment-347663452

Ganache v2 有一项新功能,可让您维护不同的工作区。每个工作区都可以代表一个不同的正在进行的链,并且可以(几乎)随时通过从磁盘读取来恢复。

例如(在 Windows 上)名为 "sample-spot" 的工作区将存储在 %AppData%\Ganache\workspaces\sample-spot\chaindata(其中 %AppData% 可能类似于 C:\Users\yourname\AppData\Roaming\)。

一些额外的细节可以在代码 here and documentation here 中找到。