CouchDB简介

CouchDB官方文档

CouchDB是Apache Foundation开发的免费开源NoSQL数据库。该特定数据库侧重于易用性和可伸缩性。CouchDB具有面向文档的NoSQL数据库体系结构,使用JSON存储数据,它使用Javascript作为其查询语言,使用HTTP作为其API。

CouchDB与关系数据库不同,因为每个数据库都是独立文档的集合,每个文档都维护着自己的数据和自包含模式。由于其出色的复制和同步功能,CouchDB为移动设备应用和类似的基于服务的需求提供了理想的数据库。此NoSQL数据库也非常适合具有累积数据(版本控制是关键)的应用程序,例如CRM和CMS系统。

安装epel-release存储库

[root@miva /]# yum install epel-release -y

创建CouchDB存储库文件

[root@miva /]# vim /etc/yum.repos.d/couchdb.repo

文件内容:

[couchdb]
name=couchdb
baseurl=https://apache.jfrog.io/artifactory/couchdb-rpm/el$releasever/$basearch/
gpgkey=https://couchdb.apache.org/repo/keys.asc https://couchdb.apache.org/repo/rpm-package-key.asc
gpgcheck=1
repo_gpgcheck=1
enabled=1

安装CouchDB

[root@miva /]# yum install couchdb -y

安装路径为:

[root@miva /]# ll /opt/couchdb/
total 932
drwxr-xr-x  2 couchdb couchdb   4096 Jun 12 17:08 bin
lrwxrwxrwx  1 couchdb couchdb     16 Jun 12 17:08 data -> /var/lib/couchdb
-rw-r-----  1 couchdb couchdb 816888 Jun 12 17:19 erl_crash.dump
drwxr-xr-x  8 couchdb couchdb   4096 Jun 12 17:08 erts-11.2.2.13
drwxr-xr-x  4 couchdb couchdb   4096 Jun 12 17:08 etc
drwxr-xr-x 53 couchdb couchdb   4096 Jun 12 17:08 lib
-rwxr-xr-x  1 couchdb couchdb 104255 May 18 10:32 LICENSE
drwxr-xr-x  3 couchdb couchdb   4096 Jun 12 17:08 releases
drwxr-xr-x  5 couchdb couchdb   4096 Jun 12 17:08 share
drwxr-xr-x  3 couchdb couchdb   4096 Jun 12 17:08 var
[root@miva /]# 

配置CouchDB

修改监听地址和端口:

[root@miva /]# vim /opt/couchdb/etc/local.ini

在配置文件中查找[chttpd]部分:

[chttpd]
;port = 5984
;bind_address = 127.0.0.1
;监听地址改为:0.0.0.0
bind_address=0.0.0.0

在配置文件中查找[couchdb]部分:

[couchdb]
;max_document_size = 4294967296 ; bytes
;os_process_timeout = 5000
;添加uuid项
uuid = 0446409388bdbdc5436c7fa4f6491afe

在配置文件中查找[admins]部分:

[admins]
;admin = mysecretpassword
;设置管理员登录密码:账号=密码(此处账号为admin密码为123456)
admin=123456

启动CouchDB

将CouchDB设为开机自启:

[root@miva /]# systemctl enable couchdb
Created symlink from /etc/systemd/system/multi-user.target.wants/couchdb.service to /usr/lib/systemd/system/couchdb.service.
[root@miva /]# 

启动CouchDB:

[root@miva /]# systemctl start couchdb
[root@miva /]# systemctl status couchdb
● couchdb.service - Apache CouchDB
Loaded: loaded (/usr/lib/systemd/system/couchdb.service; disabled; vendor preset: disabled)
Active: active (running) since Sun 2022-06-12 17:36:11 CST; 8h ago
Main PID: 19697 (beam.smp)
CGroup: /system.slice/couchdb.service
        ├─19697 /opt/couchdb/bin/../erts-11.2.2.13/bin/beam.smp -K true -A 16 -Bd -- -root /opt/couchdb/bin/.. -progname couchdb -- -home /opt/couchdb -- -boot /opt/couchdb/bin/../releases/3.2.2/couchdb -name couchdb@127.0.0.1 -kernel inet_dist_use_interface {127,0,...
        ├─19728 erl_child_setup 65536
        ├─19821 inet_gethost 4
        ├─19822 inet_gethost 4
        └─19823 ./bin/couchjs ./share/server/main.js

Jun 12 17:36:11 miva systemd[1]: Stopped Apache CouchDB.
Jun 12 17:36:11 miva systemd[1]: Started Apache CouchDB.
[root@miva /]# 

查看CouchDB是否监听了5984端口:

[root@miva /]# netstat -tunlp|grep 5984
tcp        0      0 0.0.0.0:5984            0.0.0.0:*               LISTEN      19697/beam.smp 

测试是否可以访问CouchDB的HTTP接口:

[root@miva /]# curl http://127.0.0.1:5984
{"couchdb":"Welcome","version":"3.2.2","git_sha":"d5b746b7c","uuid":"23c40b0c21e9cefa8d54e3a7301308ca","features":["access-ready","partitioned","pluggable-storage-engines","reshard","scheduler"],"vendor":{"name":"The Apache Software Foundation"}}

登录管理后台

浏览器访问:http://127.0.0.1:5984/_utils

附录

重启CouchDB:

[root@miva /]# systemctl restart couchdb

停止CouchDB:

[root@miva /]# systemctl stop couchdb

参考文章:

http://t.zoukankan.com/sky-cheng-p-13355740.html

http://t.zoukankan.com/oloroso-p-9767546.html

标签: 数据库, CouchDB

添加新评论