You cannot connect to MongoDB by going to http://localhost:27017 in your web browser. The database cannot be accessed via HTTP on port 27017.
Standard Connection String Format
 | The uri scheme described on this page is not yet supported by all of the drivers. Refer to a specific driver's documentation to see how much (if any) of the standard connection uri is supported. All drivers support an alternative method of specifying connections if this format is not supported. |
As many hosts as necessary may be specified (for connecting to replica pairs/sets,2个副本(其实没有真本)叫pair,多余2个副本 叫 set).//数据库或option共用一个,因为多台机子应相同
The options are:
Replica set:
- replicaSet=name
- The driver verifies that the name of the replica set it connects to matches this name. Implies that the hosts given are a seed list, and the driver will attempt to find all members of the set.
Single server:
Any configuration:
- safe=true|false
- true: the driver sends a getLastError command after every update to ensure that the update succeeded (see also w andwtimeoutMS).
- false: the driver does not send a getLastError command after every update.
- w=n
- The driver adds { w : n } to the getLastError command. Implies safe=true.
- wtimeoutMS=ms
- The driver adds { wtimeout : ms } to the getlasterror command. Implies safe=true.
- fsync=true|false
- true: the driver adds { fsync : true } to the getlasterror command. Implies safe=true.
- false: the driver does not not add fsync to the getlasterror command.
- journal=true|false
- true: Sync to journal. Implies safe=true.
- connectTimeoutMS=ms
- How long a connection can take to be opened before timing out.
- socketTimeoutMS=ms
- How long a send or receive on a socket can take before timing out.
These options are not case sensitive.
Examples
Connect to a database server running locally on the default port:
Connect and login to the admin database as user "fred" with password "foobar":
Connect and login to the "baz" database as user "fred" with password "foobar":
Connect to a replica pair, with one server on example1.com and another server on example2.com:
Connect to a replica set with three servers running on localhost (on ports 27017, 27018, and 27019):
Connect to a replica set with three servers, sending all writes to the primary and distributing reads to the secondaries:
Connect to localhost with safe mode on:
Connect to a replica set with safe mode on, waiting for replication to succeed on at least two machines, with a two second timeout:
Connection Pooling
The server will use one thread per TCP connection, therefore it is highly recomended that your application use some sort of connection pooling ????. Luckily, most drivers handle this for you behind the scenes. One notable exception is setups where your app spawns a new process for each request, such as CGI and some configurations of PHP.