Import connections from other tools

Bring the MongoDB connections you saved in other tools into Oxys DB Studio, from this computer or from a file.

If you already keep MongoDB connections in another tool, you do not need to type them again. Oxys DB Studio reads the files those tools save and turns each connection into a connection of its own. The other tool’s files are only read: nothing in them is changed.

Import the connections found on this computer

  1. Open the Connection Manager and click Import.
  2. The box lists every connection found on this computer, with a line that says which tools they come from and how many each one saved, for example Connections found on this computer: MongoDB for VS Code (2), DBeaver (3).
  3. Check the connections you want. Each row shows the server, the security settings, the file it was read from and its source.
  4. Click Import.

The first time you start Oxys DB Studio with no connection saved, it looks for these files by itself and offers to import what it finds.

Import a file

Use this when the file comes from another computer, or when the tool keeps it somewhere unusual.

  1. In the Import box, choose the file’s Format, or leave Detect the format.
  2. Click Import from File… and pick the file.
  3. Check the connections you want, then click Import.

What is read from each tool

ToolFound on this computerFile to import
MongoDB for VS CodeThe mdb.presetConnections setting in VS Code’s user settings.json (and its profiles), and the connections the extension saved in VS Code’s state.vscdb (global and per workspace)A settings.json (including a workspace’s .vscode/settings.json) or a state.vscdb
DBeaverMongoDB connections in data-sources*.json of each project of the DBeaver workspaceA data-sources.json
DataGrip and other JetBrains IDEsNot searchedThe JSON written by datagrip dataSources list -p <project> -o <file>
MongoDB CompassOne file per saved connectionA connection file or an export
NoSQLBoosterIts app.jsonapp.json or an export
mongoshConnection strings in mongosh_repl_history, offered as recent connection stringsThe mongosh_repl_history file
Studio 3TIts connection store (.list) in the .3T folder of your home folderA .list connection store, or a .uri export
Robo 3TThe newest robo3t.json in the .3T/robo-3t folder of your home folderA robo3t.json file

Any connection URI file (one connection string per line) is read too.

Recent connection strings from mongosh

mongosh does not save connections; its history only holds the commands you typed. When a command contains a connection string, the Import box lists it as a recent connection string, unchecked: check the ones you want. A password in such a string is never imported; you are asked for it when you connect.

Passwords and other secrets

Most tools keep passwords out of the files Oxys DB Studio reads: in the system keychain, in their own secret storage, or encrypted with a key of their own. These are never read or decrypted. The import report says so for each connection, and the password is asked the first time you connect, then kept in your credential store.

When a file does hold a password in clear text (a connection string with a password, for example), the password goes to the credential store, never into the saved connection.

What is removed on import

A connection from another tool is treated like one received from someone else. Settings that would act on this computer beyond reaching the server are removed, and the import report names each removal:

  • programs to run and files read on connect (a token file, for example);
  • paths on network shares;
  • relaxed certificate checks (accepting any certificate or any host name);
  • proxies named in the connection.

Set any of them again in the connection’s dialog if you trust the server. Files on this computer that a secure connection needs, such as a CA file, a client certificate or an SSH key, are kept.

What is not imported

  • SSH tunnels without their user. DBeaver keeps the SSH user with its encrypted credentials; such a connection is listed with the reason and is not imported. Create it by hand.
  • Tool variables in paths (for example ${project.path}) cannot be resolved here: the path is left out and the report asks you to choose the file.
  • Jump servers, Kubernetes and cloud tunnels, and driver properties of DBeaver are left out, with a note in the report.
  • JetBrains IDE project files (.idea/dataSources.xml): their structure is not publicly documented, so use the DataGrip dataSources list command to write the JSON file this import reads.
  • Navicat connection exports (.ncx): their format is not publicly documented.

Limits

  • A file larger than 16 MiB is not read.
  • At most 10,000 connections are read from one file, and at most 100 recent connection strings from a history.

Troubleshooting

  • Nothing is found. The tool may keep its files in a non-default place (a portable install, a custom workspace). Use Import from File… and pick the file.
  • A row shows an error. The connection cannot be saved as it is (for example an SSH tunnel without its user). The error says why; fix it in the other tool or create the connection by hand.
  • The format is not detected. Choose it in Format, then import the file again.
  • A file could not be read. A damaged file found on this computer (a truncated robo3t.json, for example) is listed as one row with the error; the other tools’ connections are still listed.
  • A folder name is not accepted. A folder name holding / \ : * ? " < > | or starting with a dot cannot be a folder here: the connection is imported at the top level, and its row says so. A folder whose name differs only in case from one you have goes into that folder.
  • “Changed or gone since the preview”. A file changed while the Import box was open, and a checked connection is no longer in it. Nothing was imported; preview again.