CouchDB 입문
CentOS 8 에서 기본 yum 원본 은 couchdb 패키지 가 없 기 때문에 couchdb 의 yum 원본 을 추가 해 야 합 니 다.새 파일 / 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
CouchDB 설치
$ yum install -y epel-release
$ yum install -y couchdb
기본 couchdb 의 설치 경 로 는: / opt / couchdb 입 니 다.
CouchDB 실행
$ sudo -i -u couchdb /opt/couchdb/bin/couchdb
시작 후 브 라 우 저 를 통 해 Fauxton 페이지 에 접근 할 수 있 습 니 다.http://localhost:5984/_utils / index. html 로 설치 가 성 공 했 는 지 확인 하고 이 페이지 를 통 해 CouchDB 를 관리 할 수 있 습 니 다.
또는 curl 명령 행 을 통 해 검증 합 니 다.
$ curl http://localhost:5984
{"couchdb":"Welcome","version":"2.3.1","git_sha":"c298091a4","uuid":"04de5436d56ab4a1a4ace6c16555fbe4","features":["pluggable-storage-engines","scheduler"],"vendor":{"name":"The Apache Software Foundation"}}
기본 CouchDB 는 이 컴퓨터 로 만 접근 할 수 있 습 니 다. / opt / couchdb / etc / default. ini 파일 의 bid 를 수정 할 수 있 습 니 다.address 설정 으로 구현 합 니 다.
bind_address = 127.0.0.1
bind_address = 0.0.0.0
그리고 CouchDB 를 다시 시작 합 니 다.
CouchDB 사용 하기
Fauxton 페이지 를 통 해 CouchDB 에 대한 일반적인 관리 작업 을 할 수도 있 고, CouchDB 의 API 를 통 해 일반적인 작업 을 할 수도 있다.
데이터베이스 만 들 기
#
$ curl -X PUT http://localhost:5984/mydb
{"ok":true}
#
$ curl -X GET http://localhost:5984/_all_dbs
["mydb"]
#
$ curl -X GET http://localhost:5984/mydb | json_reformat
{
"db_name": "mydb",
"purge_seq": "0-g1AAAAFTeJzLYWBg4MhgTmEQTM4vTc5ISXIwNDLXMwBCwxygFFMeC5BkeACk_gNBViIDQbUHIGrvE6N2AUTtfmLUNkDUzsevNikBSCbVE3RrkgNIXTxhdQogdfYE1SUyJMlDFGUBAD9sXo4",
"update_seq": "0-g1AAAAFTeJzLYWBg4MhgTmEQTM4vTc5ISXIwNDLXMwBCwxygFFMiQ5L8____sxIZ8ChKUgCSSfaE1TmA1MUTVpcAUldPUF0eC5BkaABSQKXziVG7AKJ2PzFqD0DU3idG7QOIWpB7swBegl6O",
"sizes": {
"file": 33992,
"external": 0,
"active": 0
},
"other": {
"data_size": 0
},
"doc_del_count": 0,
"doc_count": 0,
"disk_size": 33992,
"disk_format_version": 7,
"data_size": 0,
"compact_running": false,
"cluster": {
"q": 8,
"n": 1,
"w": 1,
"r": 1
},
"instance_start_time": "0"
}
문서 만 들 기
$ curl -X POST http://localhost:5984/mydb -d '{"name":"kongxx", "age": 30, "sex": 1}' -H "Content-Type:application/json"
{"ok":true,"id":"a10691778356d48a39f4ec6784000d2c","rev":"1-1b738f642df6eb80b3eb3e2839bbd10f"}
새로 만 든 문 서 를 조회 합 니 다.
$ curl -X GET http://localhost:5984/mydb/a10691778356d48a39f4ec6784000d2c
{"_id":"a10691778356d48a39f4ec6784000d2c","_rev":"1-1b738f642df6eb80b3eb3e2839bbd10f","name":"kongxx","age":30,"sex":1}
모든 문서 보기
$ curl -X GET http://localhost:5984/mydb/_all_docs
{"total_rows":1,"offset":0,"rows":[
{"id":"a10691778356d48a39f4ec6784000d2c","key":"a10691778356d48a39f4ec6784000d2c","value":{"rev":"1-1b738f642df6eb80b3eb3e2839bbd10f"}}
문서 일괄 생 성
$ curl -X POST http://localhost:5984/mydb/_bulk_docs -d '{"docs": [{"name":"user3", "age": 30, "sex": 1}, {"name":"user4", "age": 30, "sex": 1}, {"name":"user5", "age": 30, "sex": 1}]}' -H "Content-Type:application/json"
[{"ok":true,"id":"a10691778356d48a39f4ec6784002d88","rev":"1-3668a6e0725f7158bd07d0a00b2606bf"},{"ok":true,"id":"a10691778356d48a39f4ec678400384f","rev":"1-16de004f6aaafd2d9045cbe6a48ff701"},{"ok":true,"id":"a10691778356d48a39f4ec678400393f","rev":"1-d1ddf562a1e77674a1c1b5b8f4a5f350"}]
PUT 방법 으로 문 서 를 만 들 수도 있 습 니 다. 예 를 들 어
$ curl -X PUT http://localhost:5984/users
{"ok":true}
$ curl -X PUT http://localhost:5984/users/001 -d '{"name":"user1", "age": 30, "sex": 1}'
{"ok":true,"id":"001","rev":"1-d502adf1ee03f7145710c17d39a99701"}
$ curl -X PUT http://localhost:5984/users/002 -d '{"name":"user2", "age": 30, "sex": 1}'
{"ok":true,"id":"002","rev":"1-c0507d20e6d6b44bf8ca7203ead8d952"}
문서 업데이트
#
$ curl -X GET http://localhost:5984/mydb/a10691778356d48a39f4ec6784000d2c
{"_id":"a10691778356d48a39f4ec6784000d2c","_rev":"1-1b738f642df6eb80b3eb3e2839bbd10f","name":"kongxx","age":30,"sex":1}
# , _rev
$ curl -X PUT http://localhost:5984/mydb/a10691778356d48a39f4ec6784000d2c/ -d '{"name":"kongxx", "age": 36, "sex": 1, "_rev": "1-1b738f642df6eb80b3eb3e2839bbd10f"}'
{"ok":true,"id":"a10691778356d48a39f4ec6784000d2c","rev":"2-9b552a207bbdea7e7b6ce6cb184c6f4e"}
#
$ curl -X GET http://localhost:5984/mydb/a10691778356d48a39f4ec6784000d2c
{"_id":"a10691778356d48a39f4ec6784000d2c","_rev":"2-9b552a207bbdea7e7b6ce6cb184c6f4e","name":"kongxx","age":36,"sex":1}
문서 삭제
#
$ curl -X DELETE http://localhost:5984/mydb/a10691778356d48a39f4ec6784000d2c?rev=2-9b552a207bbdea7e7b6ce6cb184c6f4e
{"ok":true,"id":"a10691778356d48a39f4ec6784000d2c","rev":"3-60f90d5d7f1866688cbd55833b2b8c3a"}
#
$ curl -X GET http://localhost:5984/mydb/a10691778356d48a39f4ec6784000d2c
{"error":"not_found","reason":"deleted"}
데이터베이스 삭제
$ curl -X DELETE http://localhost:5984/mydb
{"ok":true}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.