Bii o ṣe le Fi Apache CouchDB sori CentOS 8


Ti a kọ ni ede Erlang, Apache CouchDB jẹ ọfẹ, igbẹkẹle ẹrọ ipamọ data NoSQL ti o ṣe atilẹyin atilẹyin abinibi ni data ni ọna kika JSON. Eyi jẹ ki o ni iwọn diẹ sii ati rọrun lati ṣe awoṣe data rẹ ni idakeji si awọn apoti isura data ibatan ibatan SQL bii MySQL. Ẹya apaniyan ni CouchDB jẹ atunṣe rẹ eyiti o tan kakiri ọpọlọpọ awọn ẹrọ iširo ati ọpọlọpọ awọn agbegbe iširo lati pese wiwa giga ati iraye si ibeere lori data.

Ninu itọsọna yii, a mu ọ nipasẹ ilana igbesẹ nipa bawo ni a ṣe le fi sori ẹrọ ati tunto Apache CouchDB lori CentOS 8.

Igbesẹ 1: Fi ibi ipamọ EPEL sii

Igbesẹ akọkọ ni fifi sori CouchDB ni fifi sori ẹrọ ti ibi ipamọ EPEL lori CentOS 8 nipa lilo pipaṣẹ yum atẹle.

# yum install epel-release

Igbese 2: Jeki Ibi ipamọ CouchDB

Lehin ti o ti fi package EPEL sii ni aṣeyọri, ni bayi tẹsiwaju ki o mu ibi ipamọ CouchDB ṣiṣẹ nipa ṣiṣẹda akọkọ faili ibi ipamọ bi o ti han.

# vi /etc/yum.repos.d/apache-couchdb.repo

Nigbamii, lẹẹ iṣeto ni isalẹ ninu faili ibi ipamọ ati fipamọ.

[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

Igbesẹ 3: Fi CouchDB sori CentOS 8

Pẹlu ibi ipamọ CouchDB ti a ṣalaye ninu faili iṣeto rẹ, ni bayi tẹsiwaju ki o fi sori ẹrọ CouchDB nipa lilo aṣẹ.

# yum install couchdb

Lẹhin fifi sori aṣeyọri ti package CouchDB ati awọn igbẹkẹle rẹ, bẹrẹ, jẹki CouchDB lati bẹrẹ lori bata ati ṣayẹwo ipo naa nipa ṣiṣe awọn ofin naa.

# systemctl start couchdb
# systemctl enable couchdb
# systemctl status couchdb

Ni afikun, o le ṣayẹwo daju ibudo CouchDB tẹtisi 5984 nipa lilo aṣẹ netstat bi o ti han.

# netstat -pnltu

Igbesẹ 4: Iṣeto ni ti CouchDB lori CentOS 8

CouchDB le ṣe atunto boya bi ipo adaduro tabi ni ipo iṣupọ. Ninu itọsọna yii, sibẹsibẹ, a yoo tunto olupin CouchDB ni iṣeto ipo ipo kan. Pẹlupẹlu, a yoo tunto CouchDB iru eyiti a le wọle si nipasẹ ẹrọ lilọ kiri ayelujara kan

Awọn faili iṣeto ti CouchDB wa ni itọsọna/opt/couchdb/etc/directory. A yoo ṣe awọn atunto diẹ ninu faili local.ini. Nitorina ṣii faili nipa lilo olootu ayanfẹ rẹ.

# vi /opt/couchdb/etc/local.ini

Ninu apakan [admins] , ṣẹda akọọlẹ abojuto kan nipa ailaamu ila ti o wa ni isalẹ rẹ ki o ṣalaye ọrọ igbaniwọle fun abojuto ni ọna kika.

[admins]
admin = mypassword

Nigbamii, yi lọ si apakan [chttpd] . Uncomment ibudo ati awọn iye adirẹsi adirẹsi. Paapaa, ṣeto adirẹsi abuda si 0.0.0.0 lati gba aaye laaye lati awọn adirẹsi IP itagbangba. O le yipada iye yii nigbamii fun awọn idi aabo.

[chttpd]
port = 5984
bind_address = 0.0.0.0

Fipamọ awọn ayipada ki o jade kuro ni faili iṣeto. Fun awọn ayipada lati ni ipa, tun bẹrẹ CouchDB.

# systemctl restart couchdb

Ti o ba n ṣiṣẹ firewalld lori olupin, o gbọdọ ṣii ibudo 5984 lati gba ijabọ CouchDB.

# firewall-cmd --zone=public --permanent --add-port=5984/tcp
# firewall-cmd --reload

Igbesẹ 5: Wọle si Interface Web CouchDB

Nipasẹ iṣeto wa, CouchDB yẹ ki o ṣiṣẹ ni localhost: 5984 . Lati jẹrisi pe CouchDB n ṣiṣẹ bi o ti ṣe yẹ, lo aṣẹ curl lati tẹjade alaye CouchDB ni ọna kika JSON.

# curl http://127.0.0.1:5984/

O le jẹrisi siwaju sii pe gbogbo lọ ni ibamu si ero kan nipa yinbọn ẹrọ aṣawakiri rẹ ati lilọ kiri lori adirẹsi IP olupin rẹ bi o ti han.

http://server-ip:5984/_utils/

O yẹ ki o gba oju-iwe wẹẹbu ni isalẹ ti n rọ ọ lati wọle nipa lilo orukọ olumulo ati ọrọ igbaniwọle bi o ti ṣalaye ninu faili local.ini ki o lu ENTER EN

Dasibodu naa yoo han bi o ti han ni isalẹ.

Ko si nkan ti o han nitori a ko ṣẹda eyikeyi awọn apoti isura data bayi. Ni apakan ti nbo, a yoo ṣẹda awọn apoti isura data diẹ.

Igbese 6. Ṣẹda Awọn apoti isura infomesonu ni CouchDB

Lati ṣẹda iwe data ni CouchDB lori ebute naa, lo pipaṣẹ curl ninu sintasi ti a fihan.

# curl -u ADMINUSER:PASSWORD -X PUT http://127.0.0.1:5984

A yoo ṣẹda awọn apoti isura data 3: tecmint_db, users_db, ati production_db.

# curl -u admin:[email  -X PUT http://127.0.0.1:5984/production_db
# curl -u admin:[email  -X PUT  http://127.0.0.1:5984/tecmint_db
# curl -u admin:[email  -X PUT http://127.0.0.1:5984/users_db

Fun aṣẹ kọọkan, o yẹ ki o gba iṣẹjade ni isalẹ.

{“Ok”: true}

Lati ṣayẹwo awọn apoti isura data ti a ṣẹda nipa lilo paramita GET ninu aṣẹ.

# curl -u admin:[email  -X GET http://127.0.0.1:5984/production_db
# curl -u admin:[email  -X GET  http://127.0.0.1:5984/tecmint_db
# curl -u admin:[email  -X GET http://127.0.0.1:5984/users_db
# curl -u admin:[email  -X GET http://127.0.0.1:5984/_all_dbs 

Lati wo awọn apoti isura data lori ẹrọ aṣawakiri rẹ, sọ sọtun/tun gbe ẹrọ aṣawakiri rẹ.

Lati pa ibi ipamọ data kan, lo paramita paarẹ bi o ti han. Fun apẹẹrẹ, aṣẹ paarẹ awọn data_db data.

# curl -u admin:[email  -X DELETE http://127.0.0.1:5984/users_db

Lẹẹkansi lati ṣayẹwo awọn apoti isura data, ṣiṣe.

# curl -u admin:[email  -X GET http://127.0.0.1:5984/_all_dbs 

Bi o ṣe le ṣakiyesi, awọn apoti isura infomesonu meji nikan ni o wa bi a ti paarẹ awọn data_db data.

Ati pe eyi mu wa de opin ikẹkọ yii. A nireti pe o le fi itunu sori ẹrọ ati tunto CouchDB lori eto CentOS 8.