Mongodb Rocket.chat:回收磁盘空间(Ubuntu快照)
我已经在Raspberry Pi 4上运行了Rocket Chat,在Ubuntu18.04.4 LTS上运行。安装是根据Rocket Chat文档使用Snaps方法完成的 从聊天中删除了很多兆字节的文件后(清除),我注意到Raspberry Pi上的磁盘空间没有得到回收 我听过一些关于运行Mongodb Rocket.chat:回收磁盘空间(Ubuntu快照),mongodb,ubuntu-18.04,rocket.chat,Mongodb,Ubuntu 18.04,Rocket.chat,我已经在Raspberry Pi 4上运行了Rocket Chat,在Ubuntu18.04.4 LTS上运行。安装是根据Rocket Chat文档使用Snaps方法完成的 从聊天中删除了很多兆字节的文件后(清除),我注意到Raspberry Pi上的磁盘空间没有得到回收 我听过一些关于运行mongodb命令“compact”的建议,但我不知道如何使用Snaps安装,因为所有命令行工具(即mongomongodb)似乎都不可用 什么命令可以回收磁盘空间?如何运行此命令 谢谢 要运行compact
mongodb
命令“compact”的建议,但我不知道如何使用Snaps安装,因为所有命令行工具(即mongo
mongodb
)似乎都不可用
什么命令可以回收磁盘空间?如何运行此命令
谢谢 要运行
compact
您需要连接。对此,您有两个选项:
如果您按照文档的说明安装了mongodb org包,那么这个伪包就包括mongo shell。您所需要做的就是ssh到Pi,并使用与rocket聊天过程相同的MONGO_URL和凭据执行shell
默认情况下,MongoDB只在localhost上侦听,要更改此设置,您需要编辑MongoDB.conf文件以侦听0.0.0.0并重新启动mongod进程。然后,您应该能够从同一网络上的任何主机直接连接到mongod
要运行
compact
,您需要连接。对此,您有两个选项:
如果您按照文档的说明安装了mongodb org包,那么这个伪包就包括mongo shell。您所需要做的就是ssh到Pi,并使用与rocket聊天过程相同的MONGO_URL和凭据执行shell
默认情况下,MongoDB只在localhost上侦听,要更改此设置,您需要编辑MongoDB.conf文件以侦听0.0.0.0并重新启动mongod进程。然后,您应该能够从同一网络上的任何主机直接连接到mongod
sudo rocketchat server.mongo
(返回数据库列表)show dbs
(说明这是Rocketchat使用的方)使用方
(列出了“collections”,其中rocketchat__;u垃圾听起来像是正确的尝试和“压缩”)show collections
db.runCommand({compact:'rocketchat_uutrash',force:true})代码>
或者,从开始到压缩所有内容:
db.getCollectionNames().forEach(function (collectionName) {
print('Compacting: ' + collectionName);
db.runCommand({ compact: collectionName, force: true });
});
多亏了,这对我起了作用:
sudo rocketchat server.mongo
show dbs
(返回数据库列表)
使用方
(说明这是Rocketchat使用的方)
show collections
(列出了“collections”,其中rocketchat__;u垃圾听起来像是正确的尝试和“压缩”)
那么
db.runCommand({compact:'rocketchat_uutrash',force:true})代码>
或者,从开始到压缩所有内容:
db.getCollectionNames().forEach(function (collectionName) {
print('Compacting: ' + collectionName);
db.runCommand({ compact: collectionName, force: true });
});
你好。谢谢你的建议。我是使用sudo snap install rocketchat服务器安装的。文档()没有提到mongodb org包,但是如果我安装了它,我应该如何连接,以及使用什么凭据连接?我不知道它们是什么…哦,你使用了快照安装方法。应该为您安装mongodb org。请参阅,其中讨论了如何连接到MongoDB以重置管理员凭据。好的,越来越近。我可以使用sudo rocketchat server.mongo连接到MongoDB。对于要运行的命令,仍然没有进一步的了解db.runCommand({compact:'rocketchat'})
不起作用。不起作用
什么意思?特定的错误消息总是有帮助的。这是一种改进,至少你现在已经连接上了。尝试运行show dbs
,对于每个数据库列表,使用use databasename
切换到它,然后运行show collections
。当你找到一个有rocketchat
集合的时候,在那里运行compact.Hi那里。谢谢你的建议。我是使用sudo snap install rocketchat服务器安装的。文档()没有提到mongodb org包,但是如果我安装了它,我应该如何连接,以及使用什么凭据连接?我不知道它们是什么…哦,你使用了快照安装方法。应该为您安装mongodb org。请参阅,其中讨论了如何连接到MongoDB以重置管理员凭据。好的,越来越近。我可以使用sudo rocketchat server.mongo连接到MongoDB。对于要运行的命令,仍然没有进一步的了解db.runCommand({compact:'rocketchat'})
不起作用。不起作用
什么意思?特定的错误消息总是有帮助的。这是一种改进,至少你现在已经连接上了。尝试运行show dbs
,对于每个数据库列表,使用use databasename
切换到它,然后运行show collections
。当您找到带有rocketchat
集合的那一个时,在那里运行compact。