CentOS 8.2部署CouchDB 3.3数据库的方法_数据库其它

来源:脚本之家  责任编辑:小易  

CouchDB是一个开源的,面向文档的NoSQL数据库。在本文中,您将学习如何在CentOS 8上安装Apache CouchDB。

什么是Apache CouchDB?

CouchDB是由Apache Software Foundation开发的开源数据库管理系统。它是在ErLang中开发的NoSQL文档存储数据库。

CouchDB使用多种格式和协议来存储,传输和处理其数据,它使用JSON(JavaScript对象表示法)存储数据,使用MapReduce将JavaScript作为查询语言以及API的HTTP。

与关系数据库不同,CouchDB数据库不在表中存储数据和关系。相反,每个数据库都是独立文档的集合。每个文档都维护自己的数据和独立的架构。

CouchDB软件包括一个本地Web界面,即用于管理CouchDB数据库服务器的Fauxton。

CPU:3.4 GHz(2核) 内存:2 GB 储存空间:20 GB 作业系统:CentOS 8.2 主机名:couchdb.lianglab.cn IP地址:192.168.6.200/24

第一步:更新CentOS 8软件包

通过使用ssh客户端,以root用户身份与couchdb.lianglab.cn连接。

最佳做法是在CentOS 8操作系统上安装任何新东西之前,先更新已安装的软件包。

使用dnf命令更新CentOS 8中已安装的软件包。

[root@solrserver ~]# hostnamectl set-hostname couchdb.lianglab.cn

[root@couchdb ~]# dnf -y update
...
Upgraded:
 NetworkManager-1:1.22.8-5.el8_2.x86_64
 NetworkManager-libnm-1:1.22.8-5.el8_2.x86_64
 NetworkManager-team-1:1.22.8-5.el8_2.x86_64
 NetworkManager-tui-1:1.22.8-5.el8_2.x86_64
 bind-export-libs-32:9.11.13-5.el8_2.x86_64
 ca-certificates-2020.2.41-80.0.el8_2.noarch
 dbus-1:1.12.8-10.el8_2.x86_64
 dbus-common-1:1.12.8-10.el8_2.noarch
 dbus-daemon-1:1.12.8-10.el8_2.x86_64
 dbus-libs-1:1.12.8-10.el8_2.x86_64
 dbus-tools-1:1.12.8-10.el8_2.x86_64
 dnf-4.2.17-7.el8_2.noarch
 dnf-data-4.2.17-7.el8_2.noarch
 gnutls-3.6.8-11.el8_2.x86_64
 grub2-common-1:2.02-87.el8_2.noarch
 grub2-pc-1:2.02-87.el8_2.x86_64
 grub2-pc-modules-1:2.02-87.el8_2.noarch
 grub2-tools-1:2.02-87.el8_2.x86_64
 grub2-tools-efi-1:2.02-87.el8_2.x86_64
 grub2-tools-extra-1:2.02-87.el8_2.x86_64
 grub2-tools-minimal-1:2.02-87.el8_2.x86_64
 iptables-1.8.4-10.el8_2.1.x86_64
 iptables-ebtables-1.8.4-10.el8_2.1.x86_64
 iptables-libs-1.8.4-10.el8_2.1.x86_64
 kernel-tools-4.18.0-193.14.2.el8_2.x86_64
 kernel-tools-libs-4.18.0-193.14.2.el8_2.x86_64
 libdnf-0.39.1-6.el8_2.x86_64
 libnghttp2-1.33.0-3.el8_2.1.x86_64
 microcode_ctl-4:20191115-4.20200609.1.el8_2.x86_64
 open-vm-tools-11.0.5-3.el8.x86_64
 python3-dnf-4.2.17-7.el8_2.noarch
 python3-hawkey-0.39.1-6.el8_2.x86_64
 python3-libdnf-0.39.1-6.el8_2.x86_64
 python3-perf-4.18.0-193.14.2.el8_2.x86_64
 selinux-policy-3.14.3-41.el8_2.5.noarch
 selinux-policy-targeted-3.14.3-41.el8_2.5.noarch
 systemd-239-31.el8_2.2.x86_64
 systemd-libs-239-31.el8_2.2.x86_64
 systemd-pam-239-31.el8_2.2.x86_64
 systemd-udev-239-31.el8_2.2.x86_64
 yum-4.2.17-7.el8_2.noarch

Installed:
 kernel-4.18.0-193.14.2.el8_2.x86_64
 kernel-core-4.18.0-193.14.2.el8_2.x86_64
 kernel-modules-4.18.0-193.14.2.el8_2.x86_64

Removed:
 kernel-4.18.0-147.5.1.el8_1.x86_64
 kernel-core-4.18.0-147.5.1.el8_1.x86_64
 kernel-modules-4.18.0-147.5.1.el8_1.x86_64
Complete!

升级软件包后,请验证新的内核版本。

[root@couchdb ~]# uname -r
4.18.0-193.el8.x86_64
[root@couchdb ~]# cat /etc/redhat-release 
CentOS Linux release 8.2.2004 (Core) 

第二步:CentOS 8上安装EPEL Yum存储库

CouchDB数据库服务器需要一些标准yum存储库中不可用的软件包,因此,我们在CentOS 8服务器上安装了EPEL(企业Linux的额外软件包) yum存储库。

[root@couchdb ~]# dnf install -y epel-release
================================================================================
 Package    Architecture Version   Repository  Size
================================================================================
Installing:
 epel-release   noarch   8-8.el8   extras   23 k

Transaction Summary
================================================================================
Install 1 Package

Total download size: 23 k
Installed size: 32 k
Downloading Packages:
epel-release-8-8.el8.noarch.rpm     34 kB/s | 23 kB  00:00
--------------------------------------------------------------------------------
Total           7.4 kB/s | 23 kB  00:03
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
 Preparing  :              1/1
 Installing  : epel-release-8-8.el8.noarch       1/1
 Running scriptlet: epel-release-8-8.el8.noarch       1/1
 Verifying  : epel-release-8-8.el8.noarch       1/1

Installed:
 epel-release-8-8.el8.noarch

Complete!

第三步:CentOS 8上安装CouchDB Yum存储库

可以通过源或RPM软件包将CouchDB数据库安装在CentOS 8上。基于RPM的安装非常简单明了,因此我们从RPM软件包中安装CouchDB。

CouchDB数据库RPM软件包通过它们自己的正式yum存储库分发。因此,我们在CentOS 8操作系统中添加了CouchDB yum存储库。

【1】 使用vim编辑器创建一个repo文件

[root@couchdb ~]# vi /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

【2】新添加的reop文件yum存储库构建缓存

[root@couchdb ~]# dnf makecache
CentOS-8 - Base - mirrors.tongdun.cn              
CentOS-8 - Extras - mirrors.tongdun.cn              
CentOS-8 - AppStream - mirrors.tongdun.cn             
bintray--apache-couchdb-rpm                
Extra Packages for Enterprise Linux 8 - x86_64            
Extra Packages for Enterprise Linux 8 - x86_64 - Debug          
Extra Packages for Enterprise Linux 8 - x86_64 - Source         
Metadata cache created.
[root@couchdb ~]# 

第四步:CentOS 8上安装Apache CouchDB

【1】我们已经建立了所需的yum存储库。现在,我们可以使用dnf命令安装CouchDB软件。

[root@couchdb ~]# dnf list couchdb
Last metadata expiration check: 0:00:39 ago on Fri 25 Dec 2020 10:42:23 PM CST.
Available Packages
couchdb.x86_64     3.1.1-1.el8     bintray--apache-couchdb-rpm
[root@couchdb ~]# dnf install -y couchdb
Last metadata expiration check: 0:00:52 ago on Fri 25 Dec 2020 10:42:23 PM CST.
Dependencies resolved.
==========================================================================================
 Package  Architecture Version   Repository       Size
==========================================================================================
Installing:
 couchdb  x86_64  3.1.1-1.el8  bintray--apache-couchdb-rpm   24 M

Transaction Summary
==========================================================================================
Install 1 Package

Total download size: 24 M
Installed size: 51 M
Downloading Packages:
couchdb-3.1.1-1.el8.x86_64.rpm       3.5 MB/s | 24 MB  00:06 
------------------------------------------------------------------------------------------
Total              3.5 MB/s | 24 MB  00:06  
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
 Preparing  :                 1/1 
 Running scriptlet: couchdb-3.1.1-1.el8.x86_64          1/1 
 Installing  : couchdb-3.1.1-1.el8.x86_64          1/1 
 Running scriptlet: couchdb-3.1.1-1.el8.x86_64          1/1 
 Verifying  : couchdb-3.1.1-1.el8.x86_64          1/1 
Installed products updated.

Installed:
 couchdb-3.1.1-1.el8.x86_64                

Complete!

CouchDB软件安装在/opt/couchdb目录中。

【2】使用vi编辑器编辑CouchDB配置文件。

[root@couchdb ~]# vi /opt/couchdb/etc/local.ini

【3】创建一个管理员用户并为其设置一个强密码。您必须找到[admins]部分,然后在此部分下添加一个admin用户,可以在此处添加任意数量的管理员用户。

修改之前
[admins]
;admin = mysecretpassword

修改之后
[admins]
admin = lianglab@Pssword

不用担心纯文本密码,因为CouchDB在服务启动时会自动将其转换为哈希值。

【4】CouchDB仅在localhost界面上运行其Web UI(即Fauxton)。但是要从网络访问它,我们也需要在其他网络接口上运行它。

找到[chttpd]部分并在其中设置以下指令。

修改之前
[chttpd]
;port = 5984
;bind_address = 127.0.0.1
[chttpd]
port = 5984
bind_address = 0.0.0.0

【5】启动CouchDB服务。

[root@couchdb ~]# systemctl enable --now couchdb.service
Created symlink /etc/systemd/system/multi-user.target.wants/couchdb.service → /usr/lib/systemd/system/couchdb.service.

【6】查看服务状态和监控端口信息

[root@couchdb ~]# systemctl status couchdb.service
● couchdb.service - Apache CouchDB
 Loaded: loaded (/usr/lib/systemd/system/couchdb.service; enabled; vendor preset: disab>
 Active: active (running) since Fri 2020-12-25 23:00:03 CST; 1min 43s ago
 Main PID: 109712 (beam.smp)
 Tasks: 40 (limit: 49642)
 Memory: 34.3M
 CGroup: /system.slice/couchdb.service
   ├─109712 /opt/couchdb/bin/../erts-9.3.3.14/bin/beam.smp -K true -A 16 -Bd -- ->
   ├─109737 /opt/couchdb/bin/../erts-9.3.3.14/bin/epmd -daemon
   └─109756 erl_child_setup 65536

Dec 25 23:00:03 couchdb.lianglab.cn systemd[1]: Started Apache CouchDB.

[root@couchdb ~]# netstat -anptl | grep 5984
tcp  0  0 0.0.0.0:5984   0.0.0.0:*    LISTEN  109712/beam.smp 

【7】Linux防火墙中允许端口5984/tcp。

CouchDB服务使用默认端口5984。因此,我们需要允许从网络到该端口的传入流量。

[root@couchdb ~]# firewall-cmd --permanent --add-port=5984/tcp
success
[root@couchdb ~]# firewall-cmd --reload
success

第五步:访问CouchDB Web UI

【1】成功启动CouchDB服务后,我们现在可以通过在Web浏览器中打开URL http://192.168.6.200:5984/_utils/来访问Fauxton Web界面。

【2】CouchDB登录页面,您可以使用管理员用户(我们已经在local.ini文件中添加了该用户)登录Fauxton。

【3】登录后,安装程序将要求您将CouchDB配置为单节点实例或设置集群。单击“配置为单节点”。

【4】提供管理员用户凭据,绑定IP地址和服务端口。点击“配置节点”。

【5】在CouchDB安装结束时,它将要求您配置复制。忽略它,然后单击左侧边栏上的“数据库”按钮。

您现在位于数据库页面。您可以从此页面创建所需的数据库。

在这里,您可以看到在CouchDB安装过程中创建的两个系统数据库以及我们为测试目的而创建的两个用户数据库。

除了Fauxton Web界面之外,我们还可以使用curl命令将HTTP命令发送到CouchDB实例。

【6】创建一个CouchDB数据库,我们可以使用以下命令。

[root@couchdb ~]# curl -u admin:lianglab@Pssword -X PUT http://127.0.0.1:5984/lianglab
{"ok":true}

[root@couchdb ~]# curl -u admin:lianglab@Pssword -X GET http://127.0.0.1:5984/lianglab
{"db_name":"lianglab","purge_seq":"0-g1AAAABXeJzLYWBgYMpgTmEQTM4vTc5ISXIwNDLXMwBCwxyQVB4LkGRoAFL_gSArkQGP2kSGpHqIoiwAtOgYRA","update_seq":"0-g1AAAABXeJzLYWBgYMpgTmEQTM4vTc5ISXIwNDLXMwBCwxyQVB4LkGRoAFL_gSArkQGP2kSGpHqIoiwAtOgYRA","sizes":{"file":16700,"external":0,"active":0},"props":{"partitioned":true},"doc_del_count":0,"doc_count":0,"disk_format_version":8,"compact_running":false,"cluster":{"q":2,"n":1,"w":1,"r":1},"instance_start_time":"0"}
[root@couchdb ~]# 

【7】要列出我们的CouchDB服务器上的所有数据库,我们可以发送以下命令。

[root@couchdb ~]# curl -u admin:lianglab@Pssword -X GET http://127.0.0.1:5984/_all_dbs
["_replicator","_users","lianglab"]

结论:

我们已经成功地安装了Apache CouchDB 3.3的在CentOS 8理解基础知识和CouchDB 的数据库的架构,我们建议你应该购买和阅读CouchDB: The Definitive Guide: Time to Relax由O'Reilly Media公司。

到此这篇关于CentOS 8.2部署CouchDB 3.3数据库的文章就介绍到这了,更多相关CentOS 8.2部署CouchDB 数据库内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网!

您可能感兴趣的文章:Python操作CouchDB数据库简单示例python操作CouchDB的方法

  • 本文相关:
  • 14张图看懂什么是区块链技术
  • 存储过程返回数组对象示例代码
  • 关于sql注入中文件读写的方法总结
  • sql中一些小巧但常用的关键字小结
  • 数据库中的左连接(left join)和右连接(right join)区别
  • 使用sqlplus创建ddl和dml操作技巧
  • 用sql server访问sybase中的表的方法
  • hadoop2.x/yarn环境搭建--centos7.0 jdk配置
  • 如何取得一个表的所有字段名用逗号分割
  • 收缩数据库不变小的解决方法
  • centos6.7部署cacti,怎么配置mysql时区
  • centos如何部署syslog服务器?
  • 怎么在centos上部署tomcat
  • centos7部署php网站需要什么步骤
  • CentOS怎么部署TinyProxy
  • centos7 和centos6部署集群的区别
  • 如何在centos上部署meteor应用
  • centos上部署ios需要安装什么软件,还有什么其他步骤,求详细
  • 如何在centos上部署meteor应用
  • 阿里云 centos 怎么部署php网站
  • centos怎么部署javaweb网站
  • centos5.5下部署oracle和java应用,修改主机名后,数据库起不来
  • 如何在centOS7 maridb部署分布式数据库
  • 虚拟机centos布署的svn怎么才能自动开启服务
  • 同一台centos上怎样部署两个tomcat
  • vmware虚拟机centos部署的web怎么访问
  • 如何在centos7上部署环境
  • CentOS6.4 kickstart部署
  • linux_centOS部署web服务
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全mssqlmysqlmariadboracledb2mssql2008mssql2005sqlitepostgresqlmongodbredisaccess数据库文摘数据库其它首页python操作couchdb数据库简单示例python操作couchdb的方法14张图看懂什么是区块链技术存储过程返回数组对象示例代码关于sql注入中文件读写的方法总结sql中一些小巧但常用的关键字小结数据库中的左连接(left join)和右连接(right join)区别使用sqlplus创建ddl和dml操作技巧用sql server访问sybase中的表的方法hadoop2.x/yarn环境搭建--centos7.0 jdk配置如何取得一个表的所有字段名用逗号分割收缩数据库不变小的解决方法sql join on 用法sqlserver、mysql、oracle三种数mysql mysqldump命令使用详解sql中代替like语句的另一种写法如何让sql运行得更快关于adox的相关知识如何取得一个表的所有字段名用逗sql server下数据库链接的使用方sql server 2005的表分区sql 查询语句积累access转sqlserver数据库的注意事项mysql与oracle差异比较之二 基本语法三表左连接查询的sql语句写法分布式和集群的概述讲解数据库插入数据之select into from与insedatastage server job之dsjob 命令详解navicat premium基本使用大数据量时提高分页的效率etl方法与过程讲解sql之join的使用详解
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved