r.connect(options) → connection
Create a new connection to the database server. The keyword arguments are:
host
: host of the RethinkDB instance. The default value is localhost
.port
: the driver port, by default 28015
.db
: the database used if not explicitly specified in a query, by default test
.user
: the user account to connect as (default admin
).password
: the password for the user account to connect as (default ''
, empty).timeout
: timeout period in seconds for the connection to be opened (default 20
).ssl
: a hash of options to support SSL connections (default None
). Currently, there is only one option available, and if the ssl
option is specified, this key is required:
ca_certs
: a path to the SSL CA certificate.If the connection cannot be established, a ReqlDriverError
exception will be thrown.
The returned connection object will have two methods on it returning the connection’s port and address:
conn.client_port()
conn.client_address()
Using SSL with RethinkDB requires proxy software on the server, such as Nginx, HAProxy or an SSL tunnel. RethinkDB will encrypt traffic and verify the CA certification to prevent man-in-the-middle attacks. Consult your proxy’s documentation for more details.
Alternatively, you may use RethinkDB’s built-in TLS support.
The RethinkDB Python driver includes support for asynchronous connections using Tornado and Twisted. Read the asynchronous connections documentation for more information.
Note: Currently, the Python driver is not thread-safe. Each thread or multiprocessing PID should be given its own connection object. (This is likely to change in a future release of RethinkDB; you can track issue #2427 for progress.)
Example: Open a connection using the default host and port, specifying the default database.
conn = r.connect(db='marvel')
Example: Open a new connection to the database.
conn = r.connect(host='localhost',
port=28015,
db='heroes')
Example: Open a new connection to the database, specifying a user/password combination for authentication.
conn = r.connect(host='localhost',
port=28015,
db='heroes',
user='herofinder',
password='metropolis')
Example: Open a new connection to the database using an SSL proxy.
conn = r.connect(host='localhost',
port=28015,
ssl={'ca_certs': '/path/to/ca.crt'})
Example: Use a with
statement to open a connection and pass it to a block. Using this style, the connection will be automatically closed when execution reaches the end of the block.
with r.connect(db='marvel') as conn:
r.table('superheroes').run(conn)
Couldn't find what you were looking for?
Contribute: edit this page or open an issue