【问题标题】:Database level migrations in parse server解析服务器中的数据库级迁移
【发布时间】:2018-07-03 17:14:39
【问题描述】:

是否有可能为Parse Server 编写数据库迁移?

我的用例是:每当我将应用程序连接到新的mongodb server 时,我都想要一些带有预填充数据的表。例如,设置暂存环境,设置本地开发环境等。 我在文档中真的找不到任何东西。

我是在朝着正确的方向前进还是错过了什么?

【问题讨论】:

    标签: mongodb database-migration parse-server


    【解决方案1】:

    Parse.com -> Parse-Server 迁移的一部分是您现在必须管理自己的数据库。 Parse-Server 为您提供连接数据库所需的工具,但您必须执行管理索引(mlab 每周为您提供有关可以添加哪些索引以进行改进的提示!)、上传大量数据等操作。

    所以,如果您的问题是“Parse-Server 会这样做吗?”不,他们不会。

    如果您的问题是“可以这样做吗?”嗯,是!如果我没记错的话,MongoDB 有一个上传功能,它接受 JSON 或 CSV。我知道你可以上传一个集合,我不确定你是否可以一次做多个集合。需要注意的是,您需要为此自行设置 createdAt 和 updatedAt 以及 objectId,但是您可以这样做。

    如果您不太熟悉处理 mongo 需要的原始数据,您可以随时设置您想要的表(如果它们不是太大),导出所有数据,然后使用该数据导出作为导入之后的所有新数据库。唯一的问题是 updatedAt 和 createdAt 会在新实例上显示旧日期。

    【讨论】:

    • 感谢 Jake,我宁愿编写数据库迁移。但我预见到的真正问题是对于像_Role、_User 这样的集合,您不会希望每次部署到新服务器时都导出数据。无论如何,这不是首选方式。
    • 为什么每次部署都要导出?您可以导出单个集合,因此如果您特别想要_Role,您只能获取_Role。您可以将一个 bash 脚本放在一起,为所有新的 mongo 实例进行导入。您还可以保留新数据库集合的主副本,因此每次启动时它总是相同的。如果您有时担心创建和更新,您甚至可以让脚本将所有这些替换为当前日期时间。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-07
    • 2016-08-22
    相关资源
    最近更新 更多