Spec-Zone.ru › RethinkDB ruby

Команда ReQL: connect

Синтаксис команды

r.connect(opts={}) → connection

Описание

Создаёт новое подключение к серверу базы данных. Принимает следующие параметры:

  • host: хост для подключения (по умолчанию localhost).
  • port: порт для подключения (по умолчанию 28015).
  • db: базу данных по умолчанию (по умолчанию test).
  • user: учётную запись пользователя для подключения (по умолчанию admin).
  • password: пароль для учётной записи пользователя для подключения (по умолчанию '', пустой).
  • timeout: время ожидания в секундах для открытия подключения (по умолчанию 20).
  • ssl: хеш параметров для поддержки SSL-соединений (по умолчанию nil). В настоящее время доступен только один параметр, и если задан параметр ssl, этот ключ обязателен:
    • ca_certs: путь к сертификату CA для SSL.

Если подключение не может быть установлено, будет выброшено исключение ReqlDriverError.

Возвращаемый объект подключения будет иметь два метода, возвращающих порт и адрес подключения:

conn.client_port
conn.client_address

Для использования SSL с RethinkDB требуется программное обеспечение прокси на сервере, такое как Nginx, HAProxy или SSL-туннель. RethinkDB будет шифровать трафик и проверять сертификат CA, чтобы предотвратить атаки «человек посередине». Обратитесь к документации вашего прокси для получения дополнительной информации.

В качестве альтернативы можно использовать встроенную поддержку TLS в RethinkDB. TLS support.

Драйвер RethinkDB для Ruby включает поддержку асинхронных подключений с использованием EventMachine. Подробнее см. документацию по асинхронным подключениям.

Пример: Открытие подключения с использованием хоста и порта по умолчанию, указанием базы данных по умолчанию.

conn = r.connect(:db => 'marvel')

Пример: Открытие нового подключения к базе данных.

conn = r.connect(:host => 'localhost',
                 :port => 28015,
                 :db => 'heroes')

Пример: Открытие нового подключения к базе данных, указанием комбинации имя пользователя/пароль для аутентификации.

conn = r.connect(:host => 'localhost',
                 :port => 28015,
                 :db => 'heroes',
                 :user => 'herofinder',
                 :password => 'metropolis')

Пример: Открытие нового подключения к базе данных с использованием SSL-прокси.

conn = r.connect(:host => 'localhost',
                 :port => 28015,
                 :ssl => {
                    :ca_certs => '/path/to/ca.crt'
                 })

Пример: Открытие подключения и немедленное его передача в Ruby-блок. При использовании этого стиля подключение будет автоматически закрыто, когда выполнение достигнет конца блока.

r.connect(:db => 'marvel') { |conn|
    r.table('superheroes').run(conn)
}

Связанные команды

  • use
  • repl
  • close

© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/ruby/connect/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API