mongo_replica_set_client
– Tools for connecting to a MongoDB replica set
Deprecated. See High Availability and PyMongo.
class pymongo.mongo_replica_set_client.``MongoReplicaSetClient
(hosts_or_uri, document_class=dict, tz_aware=False, connect=True, \*kwargs*)
Deprecated alias for MongoClient
.
MongoReplicaSetClient
will be removed in a future version of PyMongo.
Changed in version 3.0: MongoClient
is now the one and only client class for a standalone server, mongos, or replica set. It includes the functionality that had been split into MongoReplicaSetClient
: it can connect to a replica set, discover all its members, and monitor the set for stepdowns, elections, and reconfigs.
The refresh
method is removed from MongoReplicaSetClient
, as are the seeds
and hosts
properties.
close
()Cleanup client resources and disconnect from MongoDB.
On MongoDB >= 3.6, end all server sessions created by this client by sending one or more endSessions commands.
Close all sockets in the connection pools and stop the monitor threads. If this instance is used again it will be automatically re-opened and the threads restarted unless auto encryption is enabled. A client enabled with auto encryption cannot be used again after being closed; any attempt will raise
InvalidOperation
.Changed in version 3.6: End all server sessions created by this client.
c[db_name] || c.db_name
Get the db_name
Database
onMongoReplicaSetClient
c.Raises
InvalidName
if an invalid database name is used.primary
The (host, port) of the current primary of the replica set.
Returns
None
if this client is not connected to a replica set, there is no primary, or this client was created without the replicaSet option.New in version 3.0: MongoClient gained this property in version 3.0 when MongoReplicaSetClient’s functionality was merged in.
secondaries
The secondary members known to this client.
A sequence of (host, port) pairs. Empty if this client is not connected to a replica set, there are no visible secondaries, or this client was created without the replicaSet option.
New in version 3.0: MongoClient gained this property in version 3.0 when MongoReplicaSetClient’s functionality was merged in.
arbiters
Arbiters in the replica set.
A sequence of (host, port) pairs. Empty if this client is not connected to a replica set, there are no arbiters, or this client was created without the replicaSet option.
max_pool_size
The maximum allowable number of concurrent connections to each connected server. Requests to a server will block if there are maxPoolSize outstanding connections to the requested server. Defaults to 100. Cannot be 0.
When a server’s pool has reached max_pool_size, operations for that server block waiting for a socket to be returned to the pool. If
waitQueueTimeoutMS
is set, a blocked operation will raiseConnectionFailure
after a timeout. By defaultwaitQueueTimeoutMS
is not set.max_bson_size
The largest BSON object the connected server accepts in bytes.
If the client is not connected, this will block until a connection is established or raise ServerSelectionTimeoutError if no server is available.
max_message_size
The largest message the connected server accepts in bytes.
If the client is not connected, this will block until a connection is established or raise ServerSelectionTimeoutError if no server is available.
local_threshold_ms
The local threshold for this instance.
codec_options
Read only access to the
CodecOptions
of this instance.read_preference
Read only access to the read preference of this instance.
Changed in version 3.0: The
read_preference
attribute is now read only.write_concern
Read only access to the
WriteConcern
of this instance.Changed in version 3.0: The
write_concern
attribute is now read only.database_names
(session=None)DEPRECATED: Get a list of the names of all databases on the connected server.
Parameters: - session (optional): a
ClientSession
.
Changed in version 3.7: Deprecated. Use
list_database_names()
instead.Changed in version 3.6: Added
session
parameter.- session (optional): a
drop_database
(name_or_database, session=None)Drop a database.
Raises
TypeError
if name_or_database is not an instance ofbasestring
(str
in python 3) orDatabase
.Parameters: - name_or_database: the name of a database to drop, or a
Database
instance representing the database to drop - session (optional): a
ClientSession
.
Changed in version 3.6: Added
session
parameter.Note
The
write_concern
of this client is automatically applied to this operation when using MongoDB >= 3.4.Changed in version 3.4: Apply this client’s write concern automatically to this operation when connected to MongoDB >= 3.4.
- name_or_database: the name of a database to drop, or a
get_database
(name=None, codec_options=None, read_preference=None, write_concern=None, read_concern=None)Get a
Database
with the given name and options.Useful for creating a
Database
with different codec options, read preference, and/or write concern from thisMongoClient
.>>> client.read_preference
Primary()
>>> db1 = client.test
>>> db1.read_preference
Primary()
>>> from pymongo import ReadPreference
>>> db2 = client.get_database(
... 'test', read_preference=ReadPreference.SECONDARY)
>>> db2.read_preference
Secondary(tag_sets=None)
Parameters: - name (optional): The name of the database - a string. If
None
(the default) the database named in the MongoDB connection URI is returned. - codec_options (optional): An instance of
CodecOptions
. IfNone
(the default) thecodec_options
of thisMongoClient
is used. - read_preference (optional): The read preference to use. If
None
(the default) theread_preference
of thisMongoClient
is used. Seeread_preferences
for options. - write_concern (optional): An instance of
WriteConcern
. IfNone
(the default) thewrite_concern
of thisMongoClient
is used. - read_concern (optional): An instance of
ReadConcern
. IfNone
(the default) theread_concern
of thisMongoClient
is used.
Changed in version 3.5: The name parameter is now optional, defaulting to the database named in the MongoDB connection URI.
close_cursor
(cursor_id, address=None)DEPRECATED - Send a kill cursors message soon with the given id.
Raises
TypeError
if cursor_id is not an instance of(int, long)
. What closing the cursor actually means depends on this client’s cursor manager.This method may be called from a
Cursor
destructor during garbage collection, so it isn’t safe to take a lock or do network I/O. Instead, we schedule the cursor to be closed soon on a background thread.Parameters: - cursor_id: id of cursor to close
- address (optional): (host, port) pair of the cursor’s server. If it is not provided, the client attempts to close the cursor on the primary or standalone, or a mongos server.
Changed in version 3.7: Deprecated.
Changed in version 3.0: Added
address
parameter.kill_cursors
(cursor_ids, address=None)DEPRECATED - Send a kill cursors message soon with the given ids.
Raises
TypeError
if cursor_ids is not an instance oflist
.Parameters: - cursor_ids: list of cursor ids to kill
- address (optional): (host, port) pair of the cursor’s server. If it is not provided, the client attempts to close the cursor on the primary or standalone, or a mongos server.
Changed in version 3.3: Deprecated.
Changed in version 3.0: Now accepts an address argument. Schedules the cursors to be closed on a background thread instead of sending the message immediately.
set_cursor_manager
(manager_class)DEPRECATED - Set this client’s cursor manager.
Raises
TypeError
if manager_class is not a subclass ofCursorManager
. A cursor manager handles closing cursors. Different managers can implement different policies in terms of when to actually kill a cursor that has been closed.Parameters: - manager_class: cursor manager to use
Changed in version 3.3: Deprecated, for real this time.
Changed in version 3.0: Undeprecated.
get_default_database
(default=None, codec_options=None, read_preference=None, write_concern=None, read_concern=None)Get the database named in the MongoDB connection URI.
>>> uri = 'mongodb://host/my_database'
>>> client = MongoClient(uri)
>>> db = client.get_default_database()
>>> assert db.name == 'my_database'
>>> db = client.get_database()
>>> assert db.name == 'my_database'
Useful in scripts where you want to choose which database to use based only on the URI in a configuration file.
Parameters: - default (optional): the database name to use if no database name was provided in the URI.
- codec_options (optional): An instance of
CodecOptions
. IfNone
(the default) thecodec_options
of thisMongoClient
is used. - read_preference (optional): The read preference to use. If
None
(the default) theread_preference
of thisMongoClient
is used. Seeread_preferences
for options. - write_concern (optional): An instance of
WriteConcern
. IfNone
(the default) thewrite_concern
of thisMongoClient
is used. - read_concern (optional): An instance of
ReadConcern
. IfNone
(the default) theread_concern
of thisMongoClient
is used.
Changed in version 3.8: Undeprecated. Added the
default
,codec_options
,read_preference
,write_concern
andread_concern
parameters.Changed in version 3.5: Deprecated, use
get_database()
instead.
Previous topic
mongo_client
– Tools for connecting to MongoDB
Next topic
monitoring
– Tools for monitoring driver events.