1.2 备份和恢复

优质
小牛编辑
125浏览
2023-12-01

不要忘记你的密码并备份你的密码

数据目录

一切geth持续保存的内容都被写入其数据目录(除了PoW Ethash DAG,见下面的注释)。默认的数据目录位置在不同平台是特定的:

  • 苹果电脑: ~/Library/Ethereum
  • Linux: ~/.ethereum
  • Windows: %APPDATA%/Ethereum

帐户存储在keystore子目录中。该目录的内容应该可以在节点,平台,实现(C ++,Go,Python)之间传输。

要配置数据目录的位置,--datadir可以指定参数。有关详细信息,请参阅CLI选项

注:该Ethash DAG存储在~/.ethash键(Mac/Linux)或~/AppData/Ethash(Windows)中,以便它可以被所有客户端重用。您可以使用符号链接将其存储在不同的位置。

升级

有时内部数据库格式需要升级(例如,从0.9.20之前升级)。这可以使用以下命令运行(geth不应该运行):

geth upgradedb

清理

Geth的blockchain和状态数据库可以用以下命令行删除:

geth removedb

这对于删除旧的链并同步到新的链很有用。它只影响可以在同步时重新创建的数据目录,并且不会触及密钥库。

blockchain导入和导出

以二进制格式导出块链:

geth export <filename>

或者您想随时间备份链的部分,可以指定第一个和最后一个块。例如,要备份第一个块:

geth export <filename> 0 29999

请注意,备份部分链时,文件将被追加而不是截断。 导入二进制格式的blockchain:

geth import <filename>

有关详细信息,请参阅https://github.com/ethereum/wiki/wiki/Blockchain-import-export

最后:不要忘记你的密码并备份你的密码