ganache 在哪里存储以太坊区块链
Posted
技术标签:
【中文标题】ganache 在哪里存储以太坊区块链【英文标题】:Where does ganache store the Ethereum blockchain 【发布时间】:2018-06-14 07:06:56 【问题描述】:我实际上是在使用松露和 Ganache 进行一些开发。
我想知道 Ganache 将它的区块链存储在哪里,以查看我的测试使用了多少数据。它是否存储在电脑上可访问的某个位置?
我正在使用
Ubuntu 17.10 64 位 ganache-1.0.1-x86_64【问题讨论】:
【参考方案1】:TestRPC 过去只是在内存中。他们最近才发布了对将区块链写入文件系统的支持。据我所知,内存中的实现仍然是默认行为。如果您想查找区块链文件,您可以使用--db
选项自行指定位置。
来自他们的release page(v4.0.0 下):
因为我们通过文件系统支持 TestRPC,这意味着您可以 现在保存您的区块链数据以备后用。没错,如果你 关闭TestRPC,稍后再重新打开,比如说可以正常启动 你离开的地方。您需要使用新的 --db 选项(请参阅 README) 告诉 TestRPC 你想把数据保存在哪里。你会 也可能希望使用 --mnemonic 选项来使用相同的帐户 每次。
【讨论】:
谢谢,我尝试了 ganache-cli 并且成功了。我也尝试过 ganache,但似乎还没有实现。【参考方案2】:如果要使用--db
,需要使用参数--mnemonic
和--networkId
示例:
ganache-cli -p 7545 --mnemonic --networkId 100 --db .
参考:https://github.com/trufflesuite/ganache-cli/issues/407#issuecomment-347663452
【讨论】:
就我而言,我必须为 --mnemonic 部分添加一个值,例如ganache-cli -p 7545 --mnemonic "polar velvet stereo oval echo senior cause cruel tube hobby exact angry" --networkId 100 --db .
如果您多次运行该命令,请确认每次运行的可用帐户都相同【参考方案3】:
在 Ganache v2 中,有一个新功能允许您维护不同的工作区。每个工作空间可以代表一个不同的正在进行的链,并且可以通过在(几乎)任何时候从磁盘读取来恢复。
例如(在 Windows 上)名为“sample-spot”的工作区将存储在
%AppData%\Ganache\workspaces\sample-spot\chaindata
(其中%AppData%
可能类似于C:\Users\yourname\AppData\Roaming\
)。
一些额外的细节可以在代码here和文档here中找到。
【讨论】:
如果在 Mac 上 Ganache 有时会中断并通过删除~/Library/Application Support/Ganache
中的本地文件进行清理会有所帮助(相当于 AppData)。以上是关于ganache 在哪里存储以太坊区块链的主要内容,如果未能解决你的问题,请参考以下文章