Bitcoin Core 29.0 重磅升级:性能、RPC 与构建系统全面进化

·

关键词:Bitcoin Core、比特币节点、版本升级、NAT-PMP、 mempool 手续费、CMake 构建、测试工具、开发者指南

Bitcoin Core 29.0 正式发布!这一版在稳定性、性能和网络适应性方面均有显著改进,无论是全节点维护者、矿工还是钱包开发者,都能从中获益。以下内容将带你快速把握「核心要点、升级技巧与潜在影响」,并穿插常见问答,助你无缝过渡。


重大亮点速览


升级步骤:5 分钟搞定

  1. 完全关闭旧节点,等待进程结束
  2. 下载并验证 29.0 二进制文件(Linux/macOS 可直接替换;Windows 使用安装向导)。
  3. 启动时如有必要可加 -migratewallet 自动迁移钱包或按需修改 bitcoin.conf
  4. 确认区块高度继续增长即可。

兼容性说明

系统最低版本备注
Linux3.17 以上推荐内核 4.9+ 启用 BBR 优化同步
macOS13.0M 系列请自行签名
Windows10 或更新仅 64 位,老版本需升级
不支持 32 位系统;若运行自定义发行版,请先通过回归测试。

网络与 P2P 更新

UPnP 退役,NAT-PMP 接棒


手续费策略与区块权重

「零费尘土」规则

允许单笔交易创建极低额 零费尘土输出,但要求在同一 交易包 内立即消费,减少 mempool 阻塞概率。

区块权重计算校正

原默认 -blockmaxweight 会过度保留 8,000 WU,真正可打包仅剩 3,992,000 WU。新版引入 -blockreservedweight 让用户自定义保留值(≥2,000 WU)。
⚠️ 若自定义值过低,可能挖出不合法区块,节点启动将直接失败。


新增与改进 RPC

译者最爱的轻盈调试

示例:

bitcoin-cli getdescriptoractivity "wpkh(xpub.../0/*)" 820000 825000

返回 JSON,包括 txid、发送/接收金额。


REST API 更新

GET /rest/block/<hash>.jsonGET /rest/headers/<hash>.json 新增 target 字段,获取当区块目标工作量更直观。


配置与启动选项微调

若启动参数超限启动失败,查看 debug.log 的首行 FATAL 即可获得提示。


构建系统大升级:Autotools → CMake

cmake -B build
cmake --build build --target bitcoind
cmake --install build --component bitcoind

新工具与测试改进


常见问题 FAQ

Q1:29.0 能否直接覆盖 26.0 的数据目录?
A:可以。升级向导会触发可逆重索引,若钱包格式过旧,首次启动会自动触发 -upgradewallet,过程多数 <5 分钟。

Q2:为何我的节点提示「Corrupt block database」?
A:通常是异常断电。29.0 已提升写盘策略,启动时加 -reindex-chainstate 即可恢复。

Q3:CMake 构建失败找不到 OpenSSL?
A:Ubuntu/Debian 请装 libssl-dev,Arch 装 openssl,再清理缓存重新 cmake -B build

Q4:家用 50 Mbps 宽带能否运行 29.0?
A:可行。同步期每日合计约 5–7 GB;首周打开 -dbcache=2048-maxuploadtarget=5000,带宽压力可减半。

Q5:如何在测试网上启用 -natpmp
A:与主网无异,配置文件加 natpmp=1 即可。测试网默认端口 18333,映射成功日志会出现 Bound to 0.0.0.0:18333


快速小结

Bitcoin Core 29.0 以更重的「网络弹性」与「开发者友好」击穿了升级门槛。对普通节点运营者,一次备份即可直接替换;对矿工,记得校准 -blockreservedweight;对钱包作者,getdescriptoractivity 让扫描钱包快如闪电。现在就下载体验,让 29.0 为你的比特币之旅提速!