如何将meteor.js db导入远程mongo

时间:2014-12-02 04:42:53

标签: mongodb meteor

我有一个使用meteor.js开发的应用程序;因为在本地它没关系,我现在想把它移到我的专用服务器上; 我按照官方文档在服务器上安装了mongodb 2.6; 我使用以下方法转储了本地应用程序的数据库:

mongodump -h 127.0.0.1 --port 3001 -d meteor

并将转储文件夹上传到我服务器上的/ var / www / mywebsite;

mongodb配置为使用auth:true;

试图

mongorestore -h 127.0.0.1 --port 27017 -d mydbname dump/meteor

没有插入任何东西(使用mongo shell作为root,我能看到的唯一数据库是本地和管理员)

我的root mongodb用户是在admin db上创建的: (我也试过):

mongorestore -h 127.0.0.1 --port 27017 --username root --password xxxxxx -d mydbname dump/meteor

{
    "_id" : "admin.root",
    "user" : "root",
    "db" : "admin",
    "roles" : [
        {
            "role" : "userAdminAnyDatabase",
            "db" : "admin"
        }
    ]
}

我想为新数据库安装一个mongo用户并将其恢复; 在尝试了一些不同的事情后,我意识到我不明白该怎么做......有人可以帮忙解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

this answer how to mongoimport data to deployed meteor app?

  1. 转储现有mongodb中的数据(mongodb url:mongodb:// USER:PASSWORD @ DBHOST / DBNAME)

    mongodump -h DBHOST -d DBNAME -u USER -p PASSWORD
    

    这将创建一个“转储”目录,所有数据都将转储到/ DBNAME。

  2. 获取部署的流星应用程序的mongodb网址(即www.mymeteorapp.com)

    meteor mongo --url METEOR_APP_URL
    

    注意:密码每分钟到期。

  3. 将db转储数据上传到meteor应用程序(使用示例meteor db url)

    mongorestore -u MY_REMOTE_DATABASE_USERNAME -p MY_REMOTE_DATABASE_USER_PASSWORD -h production-db-b2.meteor.io:27017 -db www_mymeteorapp_com dump/DBNAME/
    

    所有数据都应该转移!