Apache CouchDB 是由 Apache 软件基金会开发的免费开源 NoSQL 数据库。它可以用作单节点或集群数据库。
CouchDB 服务器将其数据存储在命名数据库中,其中包含具有以下内容的文档JSON结构。每个文档由许多字段和附件组成。字段可以包括文本、数字、列表、布尔值等。它包括一个 RESTful HTTP API,允许您读取、创建、编辑和删除数据库文档。
在本文中,我们将介绍在 CentOS 8 上安装 CouchDB。
启用 CouchDB 存储库#
在 CentOS 8 上安装 CouchDB 的最简单方法是启用供应商存储库并安装二进制包。
以 root 身份打开您选择的编辑器或具有 sudo 权限的用户并创建 CouchDB 存储库文件:
sudo nano /etc/yum.repos.d/bintray-apache-couchdb-rpm.repo
将以下内容粘贴到文件中:
/etc/yum.repos.d/bintray-apache-couchdb-rpm.repo
[bintray--apache-couchdb-rpm]
name=bintray--apache-couchdb-rpm
baseurl=http://apache.bintray.com/couchdb-rpm/el$releasever/$basearch/
gpgcheck=0
repo_gpgcheck=0
enabled=1
保存文件并关闭编辑器。
在 CentOS 上安装 CouchDB#
通过运行以下命令安装 CouchDB 软件包:
sudo dnf install couchdb
安装完成后,启用并启动CouchDB服务:
sudo systemctl enable --now couchdb
配置 CouchDB#
CouchDB 可以设置为单节点或集群模式。在此示例中,我们将以单节点配置部署服务器。检查官方文档关于如何在集群模式下设置 CouchDB。
您可以使用 Fauxton 配置 CouchDB,位于http://127.0.0.1:5984/_utils#setup
或从命令行。设置向导将指导您完成模式选择和管理创建。
我们将从命令行创建管理员用户和数据库。
Apache CouchDB 数据和配置文件存储在/opt/couchdb
目录。要创建管理员帐户,请打开local.ini
文件并在下面添加一行[admins]
格式中的部分username = password
.
sudo nano /opt/couchdb/etc/local.ini
/opt/couchdb/etc/local.ini
[admins]
admin = mysecretpassword
重新启动 CouchDB 服务以将密码更改为哈希值:
sudo systemctl restart couchdb
您可以使用相同的格式添加多个管理员帐户。添加新帐户后务必重新启动 CouchDB 服务。
Use curl
创建系统数据库_users
, _replicator
, and _global_changes
:
curl -u ADMINUSER:PASS -X PUT http://127.0.0.1:5984/_users
curl -u ADMINUSER:PASS -X PUT http://127.0.0.1:5984/_replicator
curl -u ADMINUSER:PASS -X PUT http://127.0.0.1:5984/_global_changes
每个命令应返回以下内容:
{"ok":true}
验证 CouchDB 安装#
CouchDB 服务器运行于localhost:5984
。要验证安装是否成功并且服务是否正在运行,请运行以下命令curl该命令将以 JSON 格式打印有关 CouchDB 数据库的信息:
curl http://127.0.0.1:5984/
为了清楚起见,下面的输出已格式化。
{
"couchdb":"Welcome",
"version":"2.3.1",
"git_sha":"c298091a4",
"uuid":"5e3878666b1077eb9d4a7ba7b06c251b",
"features":[
"pluggable-storage-engines",
"scheduler"
],
"vendor":{
"name":"The Apache Software Foundation"
}
}
如果您更喜欢 GUI,您可以访问 CouchDB 基于 Web 的界面 Fauxton,网址为:
http://127.0.0.1:5984/_utils/
结论#
我们已经向您展示了如何在 CentOS 8 上安装 CouchDB。您的下一步可能是访问Apache CouchDB 文档并查找有关此主题的更多信息。
如果您有任何疑问,请随时发表评论。