CouchDB Snap 不会移动数据文件夹

CouchDB Snap 不会移动数据文件夹

当我尝试移动通过 Snap 安装的 CouchDB 的数据目录时,出现“未找到用户数据库”错误。

我是新手snap,但已经用裸机 Couch 安装做过几次了,所以我开始担心有些东西会让snap我受伤。

脚步

sudo bash
snap install couchdb
snap start couchdb
snap stop couchdb
vi /var/snap/couchdb/current/etc/local.ini
# edit properties in vi
#  - bind_address = 0.0.0.0
mv /var/snap/couchdb/common /data/couchdb
chown -R root:root /data/couchdb
ln -s /data/couchdb /var/snap/couchdb/common
snap start couchdb
snap logs couchdb

这会导致失败,提示用户数据库不存在(ensure_users_db_exists)。

2020-01-16T01:54:15Z couchdb.server[13287]: [error] 2020-01-16T01:54:15.316423Z [email protected] <0.251.0> -------- CRASH REPORT Process  (<0.251.0>) with 1 neighbors exited with reason: no match of right hand value {not_found,no_db_file} at couch_auth_cache:ensure_users_db_exists/2(line:447) <= couch_auth_cache:open_auth_db/0(line:419) <= couch_auth_cache:reinit_cache/1(line:282) <= couch_auth_cache:init/1(line:164) <= gen_server:init_it/6(line:328) <= proc_lib:init_p_do_apply/3(line:247) at gen_server:init_it/6(line:352) <= proc_lib:init_p_do_apply/3(line:247); initial_call: {couch_auth_cache,init,['Argument__1']}, ancestors: [couch_secondary_services,couch_sup,<0.212.0>], messages: [], links: [<0.221.0>,<0.253.0>], dictionary: [], trap_exit: true, status: running, heap_size: 610, stack_size: 27, reductions: 350
2020-01-16T01:54:15Z couchdb.server[13287]: [error] 2020-01-16T01:54:15.318704Z [email protected] <0.212.0> -------- Error starting Apache CouchDB:
2020-01-16T01:54:15Z couchdb.server[13287]:     {error,{shutdown,{failed_to_start_child,couch_secondary_services,{shutdown,{failed_to_start_child,auth_cache,{{badmatch,{not_found,no_db_file}},[{couch_auth_cache,ensure_users_db_exists,2,[{file,"src/couch_auth_cache.erl"},{line,447}]},{couch_auth_cache,open_auth_db,0,[{file,"src/couch_auth_cache.erl"},{line,419}]},{couch_auth_cache,reinit_cache,1,[{file,"src/couch_auth_cache.erl"},{line,282}]},{couch_auth_cache,init,1,[{file,"src/couch_auth_cache.erl"},{line,164}]},{gen_server,init_it,6,[{file,"gen_server.erl"},{line,328}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247}]}]}}}}}}

除了上述设置之外,我还编辑local.ini

data_directory = /data/couchdb/data
view_index_directory = /data/couchdb/data

有同样的问题。(我怀疑改变容器内的路径?

故事(以防万一提供线索)

对于一个业余项目,我有一个带有两个分区(一个较大的“数据”驱动器和一个较小的“其他所有驱动器”)的裸机Ubuntu Server 19安装,然后将 CouchDB 安装为 Snap(重新利用一些旧硬件)

启动并运行后,我立即将“健康”大小的数据集从笔记本电脑复制到服务器,然后刷新所有索引。由于 Couch 安装在操作系统分区上,因此驱动器空间不足。然后,我将数据文件夹移到数据分区,此时我不断收到来自 Couch 的错误。

相关内容