3.2. 基本配置

3.2.1. Base CouchDB选项

[couchdb]
attachment_stream_buffer_size

较高的值可能会导致更好的读取性能,因为读取操作更少和/或操作系统页面缓存命中更多。但是,当有多个附件写入请求并行时,它们还可以增加写入的总体响应时间。:

[couchdb]
attachment_stream_buffer_size = 4096
database_dir

指定CouchDB数据库文件的位置 (*.couch 已命名)。对于运行CouchDB服务的用户来说,这个位置应该是可写和可读的 (couchdb 默认情况下)。:

[couchdb]
database_dir = /var/lib/couchdb
default_security

在 3.0 版更改: admin_only 现在是默认值。

数据库的默认安全对象(如果未显式设置)。设置为时 everyone ,任何人都可以执行读写操作。设置为时 admin_only ,只有管理员可以读写。设置为时 admin_local ,任何人都可以读写分片数据库,但只能由管理员读写。

[库奇达] 默认安全性=仅管理
enable_database_recovery

只有在以下情况下才启用此选项以“软删除”数据库 DELETE /{{db}} 发出删除请求。这将使用以下形式的后缀重命名数据库的所有碎片 <dbname>.YMD.HMS.deleted.couchdb 。然后,您可以根据需要稍后手动删除这些文件。

默认值为 false 。::

[couchdb]
enable_database_recovery = false
file_compression

在 1.2 版更改: 补充 Google Snappy 压缩算法。

方法用于压缩附加到数据库的所有内容并查看索引文件,附件除外(请参见 attachments 第节)。可用的方法有:

  • none :无压缩
  • snappy :使用谷歌Snappy,一个非常快速的压缩/解压缩程序
  • deflate_N :使用zlib的deflate; N 压缩等级为 1 (最快、最低压缩比)到 9 (最慢,最高压缩比)
[couchdb]
file_compression = snappy
maintenance_mode

通过设置此配置参数,可以将CouchDB节点置于两种不同的维护模式中。

  • true :节点将不响应来自其他节点的群集请求,/u up端点将返回404响应。
  • nolb :up端点将返回404响应。
  • false :节点响应正常,/u up返回200响应。

管理员应该已经在集群中的CouchDB节点前面配置了一个负载平衡器。此负载平衡器应使用/u up端点来确定是否向任何特定节点发送HTTP请求。对于HAProxy,以下配置是合适的:

http-check disable-on-404
option httpchk GET /_up
max_dbs_open

此选项将一次打开的数据库数量设为上限。CouchDB reference对内部数据库访问进行计数,并根据需要关闭空闲数据库。有时需要同时打开多个默认值,例如在许多数据库将连续复制的部署中。:

[couchdb]
max_dbs_open = 100
max_document_size

在 3.0.0 版更改.

限制文档正文的最大大小。大小是根据JSON文档体的序列化Erlang表示来计算的,因为这更准确地反映了磁盘上消耗的存储量。特别是,此限制不包括附件。

如果一个或多个文档大于此配置值,则创建或更新文档的HTTP请求将失败,错误代码为413。

如果 _update 处理程序,文档大小在转换之后和插入到数据库之前检查。::

[couchdb]
max_document_size = 8000000 ; bytes

警告

在2.1.0版之前,此设置是通过简单检查http请求正文大小来实现的。对于通过以下方式更新的单个文档 PUT that approximation was close enough, however that is not the case for ``_ Bulk_docs``端点。在2.1.0之后,定义了单独的配置参数: chttpd/max_http_request_size ,它可用于限制最大http请求大小。升级后,建议查看这些设置并进行相应调整。

os_process_timeout

如果外部进程(如查询服务器或外部进程)运行了此毫秒而未返回任何结果,则它将被终止。将该值保持较小可以确保您获得权宜之计的错误,但您可能需要根据您的特定需要调整它。:

[couchdb]
os_process_timeout = 5000 ; 5 sec
single_node

3.0.0 新版功能.

当此配置设置设置为 true ,在启动时自动创建系统数据库。必须设置 false 对于集群CouchDB安装。

uri_file

此文件包含完整的 URI 可以用来访问这个CouchDB实例的。它用于帮助发现运行CouchDB的端口(如果它被设置为 0 (例如,自动分配任何一个免费的)。对于运行CouchDB服务的用户来说,这个文件应该是可写的和可读的 (couchdb 默认情况下)。:

[couchdb]
uri_file = /var/run/couchdb/couchdb.uri
users_db_security_editable

3.0.0 新版功能.

当此配置设置设置为 false ,拒绝任何修改 _users 数据库安全对象。在3.x中不推荐修改此对象,并且在couchdb4.x中将完全不允许修改。

users_db_suffix

指定用于存储CouchDB用户的系统数据库的后缀(名称的最后一个组件)。:

[couchdb]
users_db_suffix = _users

警告

如果更改数据库名称,不要忘记删除或清理旧数据库,因为它将不再受CouchDB的保护。

util_driver_dir

指定二进制驱动程序的位置 (icuejson 等等)。对于运行CouchDB服务的用户来说,这个位置及其内容应该是可读的。:

[couchdb]
util_driver_dir = /usr/lib/couchdb/erlang/lib/couch-1.5.0/priv/lib
uuid

1.3 新版功能.

此CouchDB服务器实例的唯一标识符。:

[couchdb]
uuid = 0a959b9b8227188afc2ac26ccdf345a6
view_index_dir

指定CouchDB视图索引文件的位置。对于运行CouchDB服务的用户来说,这个位置应该是可写的和可读的 (couchdb 默认情况下)。:

[couchdb]
view_index_dir = /var/lib/couchdb