本系列文章:web
第一章:九析带你完爆 hyperledger fabric - 快速上手 basic-network 样例docker
第二章:九析带你完爆 hyperledger fabric - 快速搭建 GO 环境数据库
第三章:九析带你完爆 hyperledger fabric - 快速上手 first-network 样例apache
第四章:九析带你完爆 hyperledger fabric - 系统逻辑架构篇json
第五章:九析带你完爆 hyperledger fabirc - 网络节点介绍跨域
第六章: 九析带你轻松完爆 hyperledger fabric - 区块和区块链介绍浏览器
目录app
1 前言
2 特色
2.1 分布式数据库
2.2 面向文档数据库
2.3 支持 REST API
3 下载安装运行
3.1 二进制安装
3.2 docker 镜像下载和运行
4 控制台
4.1 菜单介绍
4.1.1 Databases
4.1.2 Setup
4.1.3 Active Tasks
4.1.4 Configuration
4.1.5 Replication
4.1.6 Documentation
4.1.7 Verify
4.1.8 Admin Party
4.2 基于 web 控制台的数据库管理操做
4.2.1 建立测试数据库
4.2.2 建立测试记录(Document)
4.3 基于命令行的数据库管理操做
4.3.1 查看数据库元信息
4.3.2 查看数据库记录
4.3.3 插入数据库记录
4.3.4 删除数据库记录
4.3.5 更新数据库记录
1 前言
CouchDB 是一个开源的面向文档的数据库管理系统,能够经过 RESTful JSON API 访问。术语 "CouchDB" 是 "Cluster Of Unreliable Commodity Hardware" 的首字母缩写,它反应了即便在容易出现故障的硬件上,CouchDB 也能够提供高可用、高可靠和高度伸缩性。CouchDB 口号是构建面向 web 应用的新一代存储系统。
CouchDB 是一个顶级的 Apache Software Foundation 开源项目,根据 Apache 许可 V2.0 发布,基于 Erlang 语言编写。
CouchDB 官网请点击。
2 特色
2.1 分布式数据库
CouchDB 是分布式数据库,它能够把存储系统分布到 n 台物理节点上面,而且很好的协调和同步节点之间的数据读写一致性。对于基于 web 的大规模应用文档应用,分布式可让它没必要像传统的关系型数据库那样分库拆表,在应用层代码进行大规模的改动。
2.2 面向文档数据库
CouchDB 是面向文档的数据库,存储办结构化的数据,比较相似 lucene 的 index 结构,特别适合存储文档,所以很适合 CMS、电话本、地址本等应用,在这些应用场合,文档数据库要比关系数据库更加方便,性能更好。
2.3 支持 REST API
可让用户使用 Javascript 来操做 CouchDB 数据库,也能够用 JS 编写查询语句,能够设想,用 AJAX + CouchDB 开发 CMS 系统会是多么的简单方便。
3 下载安装运行
3.1 二进制安装
能够到 CouchDB 官网进行不一样操做系统的二进制版本下载安装。以下截图所示:
3.2 docker 镜像下载和运行
docker pull couchdb
docker run -d -p 5984:5984 couchdb # -d 之后台模式运行 -p 本地端口:couchdb 容器内容端口
运行成功以后,能够经过以下命令进行验证:
docker ps
curl localhost:5984
正确执行结果以下图所示:
若是以为命令行不够直观,也能够经过浏览器直接访问:
4 控制台
CouchDB 提供 Web UI,打开浏览器,输入 http://localhost:5984/_utils 打开管理页面:
4.1 菜单介绍
4.1.1 Databases
数据库的增删改查管理:
4.1.2 Setup
配置数据库单点或者集群:
4.1.3 Active Tasks
数据库管理任务。好比复制、压缩等管理任务:
4.1.4 Configuration
数据库的配置。基本配置和跨域配置(CORS):
4.1.5 Replication
复制任务管理页面:
4.1.6 Documentation
帮助文档连接页面:
4.1.7 Verify
安装校验检查页面,点击 “Verify Install”按钮检查你的安装是否各项都正常:
4.1.8 Admin Party
建立 CouchDB 数据库管理员页面:
4.2 基于 web 控制台的数据库管理操做
由于 CouchDB 是文档型数据库,所以数据库操做相似 MongoDB,数据保存格式为 Document。
4.2.1 建立测试数据库
4.2.2 建立测试记录(Document)
添加测试记录,注意 json 格式的逗号(,)不要忘记:
建立完记录的表格样式:
4.3 基于命令行的数据库管理操做
4.3.1 查看数据库元信息
curl localhsot:5984/jiuxi
jiuxi 是自建的测试数据库,查询结果以下图所示:
4.3.2 查看数据库记录
curl localhost:5984/jiuxi/635959a35a592976255a31313a0023ca
635959a35a592976255a31313a0023ca 是数据库中的某条记录 ID,查询结果以下图所示:
4.3.3 插入数据库记录
curl -X POST -H "Content-Type: application/json" -d '{"_id": "1", "name": "zenglin"}' http://localhost:5984/jiuxi
命令执行结果以下图所示:
4.3.4 删除数据库记录
curl -X DELETE http://localhost:5984/jiuxi -d '{"_id": "635959a35a592976255a31313a0023ca", "_rev": "1-f75a45bdddd2f3bbd4c595aecdc1483e"}'
注意全部在删除数据库记录的时候都要带上版本字段“_rev",不然会报错,报错内容以下:
{"error":"conflict","reason":"Document update conflict."}
4.3.5 更新数据库记录
curl -X PUT http://localhost:5984/jiuxi/635959a35a592976255a31313a0075ca -d '{"_id": "635959a35a592976255a31313a0023ca", "_rev": "2-27d143142ed31c08252b2e9a002b71cb", "name": "zenglin", "age": 18, "gender": "male"}'
注意全部在更新数据库记录的时候都要带上版本字段“_rev”,不然会报错,报错内容以下:
{"error":"conflict","reason":"Document update conflict."}
自此, 九析带你轻松完爆 CouchDB 安装和基本使用。