通过Dropbox同步mongodb数据库

Mic*_*ent 6 dropbox mongodb

我在我正在开发的本地wep-app中使用名为'mydb'的mongodb数据库,并希望通过Dropbox同步db文件,因此我将在所有开发机器上使用它.

每当我在数据库中插入一些新数据时,文件'mydb.0'和'mydb.ns'似乎都没有改变.因此Dropbox不会同步任何内容.这里有什么想法?

我知道这可能听起来像一个可怕的想法,但我是唯一的数据库用户,我从不在一台机器上运行数据库.此外,我不与其他任何人共享文件.只是要注意我可以在我离开的地方继续使用另一台机器.

The*_*heo 4

不幸的是,这听起来是一个可怕的想法。如果 Mongo 同时运行在两台机器上怎么办?两个数据库很可能都会被损坏。更好的方法是编写一个脚本,使用 mongodump 和 mongorestore 将数据库转储到 Dropbox 并从转储中恢复它。不过,您必须手动运行这些。

您看不到数据库文件发生任何更改的原因可能是因为 Mongo 预先分配了其数据库文件,因此它们的大小永远不会改变,只是其中的内容发生变化。Dropbox 可能没有发现这一点。Mongo 也不会立即写入磁盘。相反,它使用内存映射文件,这些文件可能会在稍后刷新(尽管这应该是几秒钟的事情,所以它不应该是原因)。