Given a MongoDB srv connection string, how can I make a connection with mongoc?

The mongodb drivers for most APIs are initialized using a connection string - which, in the SRV protocol, looks something like "mongodb+srv://<username>:<password>@example.example.mongodb.net/?retryWrites=true&w=majority". However, the initialization with the database toolbox's mongoc instead asks for server and port info. I've tried to decompose my connection string into parameters for mongoc in the following manner:
conn = mongoc("example.example.mongodb.net",27017,"DbName",UserName="...",Password="...");
But get the following error:
Error using database.mongo.connection
[Mongo Driver Error]: No suitable servers found (`serverSelectionTryOnce` set): [Failed to resolve
'example.example.mongodb.net'].
I've also tried variants, like "example.example", and appending "mongodb+srv://" to the start, which raises a [Mongo Driver Error]: Invalid host string in URI.

 Accepted Answer

After reaching out to support, the solution is conn = mongoc(connectionString,databaseName)
Even though this isn't stated anywhere in the documentation, as of 2023b.

More Answers (0)

Products

Release

R2023a

Asked:

on 29 Aug 2023

Commented:

on 28 Feb 2024

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!