如何以编程方式创建新的Mongo数据库?

时间:2013-01-20 04:21:16

标签: c# mongodb mongodb-.net-driver

我正在尝试以编程方式创建一个新数据库,这是每个客户端的一个数据库。

并使用此:

public void CreateNewClientDatabase(Client client)
{
    var connectionString = Util.GetClientDatabaseConnectionString(client.DatabaseName);
    var mongoClient = new MongoDB.Driver.MongoClient(connectionString);
    var server = mongoClient.GetServer();

    var db = server.GetDatabase(client.DatabaseName);
    db.CreateCollection("DatabaseCreated");
}

我遇到的错误CreateCollection是我没有正确的凭据,即使在连接字符串中,我的凭证是正确的。

Exception读作:

Invalid credentials for database 'client_database_name'.

InnerException

{"Command 'authenticate' failed: auth fails (response: { \"errmsg\" : \"auth fails\", \"ok\" : 0.0 })"}

connectionString最终成为了这个:

mongodb://admin_user:admin_pwd@linus.mongohq.com:10042/client_database_name

缺少什么


P.S。使用version 1.7 of MongoDB Driver

1 个答案:

答案 0 :(得分:2)

Bruno ...要在像MongoHQ这样的共享服务上执行此操作,您需要使用其API以编程方式创建新数据库。 API的文档位于:http://support.mongohq.com