Connection String Options
The connection string properties are the various options that can be used to establish a connection. This section provides a complete list of the options you can configure in the connection string for this provider. Click the links for further details.
For more information on connecting, see Establishing a Connection.
| Property | Description |
| AuthScheme | The authentication mechanism that MongoDB will use to authenticate the connection. |
| Server | The host name or IP address of the server hosting the MongoDB database. |
| Port | The port for the MongoDB database. |
| User | Specifies the user ID of the authenticating MongoDB user account. |
| Password | Specifies the password of the authenticating user account. |
| Database | The name of the MongoDB database. |
| UseSSL | This field sets whether SSL is enabled. |
| AuthDatabase | The name of the MongoDB database for authentication. |
| ReplicaSet | This property allows you to specify multiple servers in addition to the one configured in Server and Port . Specify both a server name and port; separate servers with a comma. |
| DNSServer | Specify the DNS server when resolving MongoDB seed list. |
| Property | Description |
| KerberosKDC | The Kerberos Key Distribution Center (KDC) service used to authenticate the user. |
| KerberosRealm | The Kerberos Realm used to authenticate the user. |
| KerberosSPN | The service principal name (SPN) for the Kerberos Domain Controller. |
| KerberosUser | The principal name for the Kerberos Domain Controller. Used in the format host/user@realm. |
| KerberosKeytabFile | The Keytab file containing your pairs of Kerberos principals and encrypted keys. |
| KerberosServiceRealm | The Kerberos realm of the service. |
| KerberosServiceKDC | The Kerberos KDC of the service. |
| KerberosTicketCache | The full file path to an MIT Kerberos credential cache file. |
| Property | Description |
| SSLClientCert | Specifies the TLS/SSL client certificate store for SSL Client Authentication (2-way SSL). This property works in conjunction with other SSL-related properties to establish a secure connection. |
| SSLClientCertType | Specifies the type of key store containing the TLS/SSL client certificate for SSL Client Authentication. Choose from a variety of key store formats depending on your platform and certificate source. |
| SSLClientCertPassword | Specifes the password required to access the TLS/SSL client certificate store. Use this property if the selected certificate store type requires a password for access. |
| SSLClientCertSubject | Specifes the subject of the TLS/SSL client certificate to locate it in the certificate store. Use a comma-separated list of distinguished name fields, such as CN=www.server.com, C=US. The wildcard * selects the first certificate in the store. |
| SSLServerCert | Specifies the certificate to be accepted from the server when connecting using TLS/SSL. |
| Property | Description |
| SSHAuthMode | The authentication method used when establishing an SSH Tunnel to the service. |
| SSHClientCert | A certificate to be used for authenticating the SSHUser. |
| SSHClientCertPassword | The password of the SSHClientCert key if it has one. |
| SSHClientCertSubject | The subject of the SSH client certificate. |
| SSHClientCertType | The type of SSHClientCert private key. |
| SSHServer | The SSH server. |
| SSHPort | The SSH port. |
| SSHUser | The SSH user. |
| SSHPassword | The SSH password. |
| SSHServerFingerprint | The SSH server fingerprint. |
| UseSSH | Whether to tunnel the MongoDB connection over SSH. Use SSH. |
| Property | Description |
| FirewallType | Specifies the protocol the provider uses to tunnel traffic through a proxy-based firewall. |
| FirewallServer | Identifies the IP address, DNS name, or host name of a proxy used to traverse a firewall and relay user queries to network resources. |
| FirewallPort | Specifies the TCP port to be used for a proxy-based firewall. |
| FirewallUser | Identifies the user ID of the account authenticating to a proxy-based firewall. |
| FirewallPassword | Specifies the password of the user account authenticating to a proxy-based firewall. |
| Property | Description |
| Logfile | Specifes the file path to the log file where the provider records its activities, such as authentication, query execution, and connection details. |
| Verbosity | Specifies the verbosity level of the log file, which controls the amount of detail logged. Supported values range from 1 to 5. |
| LogModules | Specifies the core modules to include in the log file. Use a semicolon-separated list of module names. By default, all modules are logged. |
| MaxLogFileSize | Specifies the maximum size of a single log file in bytes. For example, '10 MB'. When the file reaches the limit, the provider creates a new log file with the date and time appended to the name. |
| MaxLogFileCount | Specifies the maximum number of log files the provider retains. When the limit is reached, the oldest log file is deleted to make space for a new one. |
| Property | Description |
| Location | Specifies the location of a directory containing schema files that define tables, views, and stored procedures. Depending on your service's requirements, this may be expressed as either an absolute path or a relative path. |
| BrowsableSchemas | Optional setting that restricts the schemas reported to a subset of all available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC . |
| Tables | Optional setting that restricts the tables reported to a subset of all available tables. For example, Tables=TableA,TableB,TableC . |
| Views | Optional setting that restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC . |
| Property | Description |
| AutoCache | Specifies whether the content of tables targeted by SELECT queries is automatically cached to the specified cache database. |
| CacheProvider | The namespace of an ADO.NET provider. The specified provider is used as the target database for all caching operations. |
| CacheConnection | The connection string for the specified cache database. |
| CacheLocation | Specifies the path to the cache when caching to a file. |
| CacheTolerance | The tolerance, in seconds, for stale data in the specified cache database. |
| Offline | Get the data from the specified cache database instead of live MongoDB data. |
| CacheMetadata | Determines whether the provider caches table metadata to a file-based cache database. |
| Property | Description |
| BatchSize | Specifies the maximum number of rows included in each batch operation. Set to 0 to submit the entire batch as a single request. |
| BuiltInColumnMapping | A list of column name mappings for MongoDB's built-in columns. |
| Compression | Specify the compression method. Compression is not enabled when it is None. |
| ConnectionLifeTime | Specifies the maximum lifetime of a connection in seconds. When the specified time elapses, the provider closes the connection. Set to 0 or leave empty for no time limit. |
| DataModel | By default, the provider will not automatically discover the metadata for a child table as its own distinct table. To enable this functionality, set DataModel to Relational . |
| FlattenArrays | By default, nested arrays are returned as strings of JSON. The FlattenArrays property can be used to flatten the elements of nested arrays into columns of their own. Set FlattenArrays to the number of elements you want to return from nested arrays. |
| FlattenObjects | Set FlattenObjects to true to flatten object properties into columns of their own. Otherwise, objects nested in arrays are returned as strings of JSON. |
| GenerateSchemaFiles | Indicates the user preference as to when schemas should be generated and saved. |
| MaxRows | Specifies the maximum rows returned for queries without aggregation or GROUP BY. |
| NoCursorTimeout | The server normally times out idle cursors after an inactivity period (10 minutes) to prevent excess memory use. Set this option to prevent that. |
| Other | Specifies additional hidden properties for specific use cases. These are not required for typical provider functionality. Use a semicolon-separated list to define multiple properties. |
| Pagesize | Specifies the maximum number of results to return from MongoDB, per page. This setting overrides the default page size set by the datasource, which is optimized for most use cases. |
| PoolIdleTimeout | Specifies the maximum idle time, in seconds, that a connection can remain in the pool before being closed. |
| PoolMaxSize | Specifies the maximum number of connections allowed in the connection pool. The default value is 100. Set to 0 or a negative value to disable pooling. |
| PoolMinSize | Specifies the minimum number of connections maintained in the connection pool. The default value is 1. |
| PoolWaitTime | Specifies the maximum number of seconds a connection request waits for an available connection in the pool. If the wait exceeds this time, an error is returned. The default is 60 seconds. |
| PseudoColumns | Specifies the pseudocolumns to expose as table columns. Use the format 'TableName=ColumnName;TableName=ColumnName'. The default is an empty string, which disables this property. |
| QueryPassthrough | This option passes the query to MongoDB as-is. |
| Readonly | Toggles read-only access to MongoDB from the provider. |
| ReadPreference | Set this to a strategy for reading from a replica set. Accepted values are primary, primaryPreferred, secondary, secondaryPreferred, and nearest. |
| ReadPreferenceTags | Use this property to target a replica set member or members that are associated with tags. |
| RowScanDepth | The maximum number of rows to scan to look for the columns available in a table. |
| RTK | Specifies the runtime key for licensing the provider. If unset or invalid, the provider defaults to the standard licensing method. Use this property only in environments where the standard licensing method is unsupported or requires a runtime key. |
| ServiceKind | Specify the kind of service. |
| SlaveOK | This property sets whether the provider is allowed to read from secondary (slave) servers. |
| Timeout | Specifies the maximum time, in seconds, that the provider waits for a server response before throwing a timeout error. The default is 60 seconds. Set to 0 to disable the timeout. |
| TypeDetectionScheme | Comma-separated options for how the provider will scan the data to determine the fields and datatypes in each document collection. |
| UpdateScheme | Sets replacing or merging target document with updating fields is performed by executing update statement. |
| UseConnectionPooling | Enables the connection pooling feature, which allows the provider to reuse existing connections instead of creating new ones for each request. |
| UseFindAPI | Execute MongoDB queries using db.collection.find(). |
| UserDefinedViews | Specifies a filepath to a JSON configuration file defining custom views. The provider automatically detects and uses the views specified in this file. |
| WriteConcern | Requests acknowledgment that the write operation has propagated to the specified number of mongod instances. |
| WriteConcernJournaled | Requires acknowledgment that the mongod instances, as specified in the WriteConcern property, have written to the on-disk journal. |
| WriteConcernTimeout | This option specifies a time limit, in milliseconds, for the write concern. |
| WriteScheme | Sets whether the object type for inserted or updated objects is determined from the existing column metadata or the input value type. |