4

我在我的 nodejs 应用程序中使用了 nedb,我的第一个代码是:

var Datastore = require('nedb');
var db = new Datastore({ filename: 'users.db', autoload: true });
db.persistence.setAutocompactionInterval(5);

本地主机一切正常,数据库将在我的 db 文件中保存所有内容。(服务器重启后数据库保存)但是在heroku服务器中,数据库是空的!!!我认为数据库保存为内存!(不在我的数据库文件中!!)为什么?!我想将我的数据库保存在 Heroku 服务器的 db 文件中!

4

1 回答 1

6

Heroku dynos 有一个临时文件系统,所以你不应该试图在那里保存你的数据库。从文档中:

在 dyno 的生命周期中,它的运行进程可以将文件系统用作临时暂存器,但是任何其他 dyno 中的进程都看不到写入的文件,并且在停止或重新启动 dyno 时,写入的任何文件都将被丢弃。

您将有更好的时间添加 MongoDB 插件并改为写入该插件。

于 2017-04-02T21:35:16.703 回答