database - 如何使用区块链存储数据
问题描述
所以基本上我正在构建一个 web 应用程序,我向 PHP 发出请求以读取/写入 MySQL 数据库,在谷歌中我发现了一篇关于区块链数据库的 Quora 博客文章,我看过一个(看起来很不错)它是 BigchainDB事情是我在一个共享主机上,显然我不能运行 Python 和任何简单的 PHP 脚本等等。
我的问题是:有没有办法从共享主机(免费)在区块链上托管数据库或以任何形式在 MySQL 中使用区块链?
解决方案
有没有办法从共享主机(免费)在区块链上托管数据库或以任何形式在 MySQL 中使用区块链?
看来您是在同时提出两个问题。以下是我可能的划分方式:
- 我可以在区块链上托管数据库吗?
- 我将如何将 MySQL 与区块链一起使用?
让我们按顺序看这些问题。
1. 我可以在区块链上托管数据库吗?
是的你可以。区块链基本上是一个包含数据条目的共享分类帐。因此,当您托管区块链时,您自然会托管数据库。例如,比特币区块链是比特币交易的数据库。
托管(免费)
您可能找不到免费托管,特别是因为区块链挖掘的计算成本可能会取决于共识算法。但是,您始终可以使用自己的计算机来托管模拟区块链节点网络,设置多个相互通信的 Docker 容器实例。
2. 将区块链与 MySQL 结合使用
在我回答这个问题之前,让我假设一个情况。也许,您想托管一个包含来自区块链的条目的 MySQL 数据库。您可能会被激励这样做以在本地环境中获得更好的查询性能。
在这种情况下,我认为您的系统中有两种数据库
- 区块链(共享账本)
- 数据库
您可以通过将区块链上的条目复制到 MySQL 来解决您的问题。您还可以定期复制差异,以确保您的 MySQL 数据库与区块链的内容同步。同步后,您可以通过在 PHP 上使用 ORM(对象关系管理器)将 MySQL DB 与您的应用程序一起使用。
有趣bitcoind
的是,比特币核心守护进程构建其本地数据库(由 BerkeleyDB 提供支持)以引用完整节点上的交易。
推荐阅读
- sql - 如何在 SQL Server 2008 中找出两列之间的数字
- apache-kafka - 我如何在 Kafka 中设置不从它离开的地方消费?
- ruby - Thin 和 Puma 因类似问题而失败 - 错误:无法在 Mac 上使用 OpenSSL@1.1 构建 gem 原生扩展
- debian - wireguard 客户端未连接到互联网
- python - pytorch 数据集对象在 for 循环中使用时如何知道它是否已经结束?
- powershell - 如何将子注册表项从动态 HKEY_USERS\SID 提取到 reg 文件中,并使用 Powershell 替换 regfile 中的 SID
- django - 如何在 django rest 框架中使用多个图像更新帖子?
- javascript - 如果启用按钮,DataTables SearchPanes Cascade 不起作用
- angular - 如何在初始化反应角度形式时根据另一个表单控件的值禁用表单控件?
- java - Spring data jpa like query 兼容 Oracle 和 Postgres