Menu Docs

Página inicial do DocsDesenvolver aplicaçõesMongoDB Drivers

Motor (Driver assíncrono)

Nesta página

  • Introdução
  • Instalação
  • Ligar ao MongoDB Atlas
  • Conecte-se ao Atlas MongoDB sem a API estável
  • Conecte-se a um servidor MongoDB em sua máquina local
  • Compatibilidade

Boas-vindas ao site de documentação do Motor, o driver oficial do MongoDB para aplicativos Python assíncronos. Faça o download usando pip ou configure um projeto executável seguindo nossos tutoriais.

Dica

Se não for necessário acessar o MongoDB de forma não bloqueante ou a partir de co-rotinas, recomendamos que você use o driver PyMongo.

Siga os links abaixo para ler blog posts que descrevem casos de uso específicos para o driver Motor:

Você deve instalar o módulo driver Motor para disponibilizá-lo para seu aplicativo Python. Recomendamos usar pip para instalar o Motor.

O comando a seguir demonstra como você pode instalar a versão mais recente do módulo usando a linha de comando:

$ python -m pip install motor

Para obter mais informações sobre os requisitos e outros métodos de instalação, consulte a Instalação do Motor documentação.

Você pode usar o seguinte trecho de conexão para testar sua conexão com sua implantação do MongoDB no Atlas usando a estrutura assíncrona asyncio:

import asyncio
from motor.motor_asyncio import AsyncIOMotorClient
from pymongo.server_api import ServerApi
async def ping_server():
# Replace the placeholder with your Atlas connection string
uri = "<connection string>"
# Set the Stable API version when creating a new client
client = AsyncIOMotorClient(uri, server_api=ServerApi('1'))
# Send a ping to confirm a successful connection
try:
await client.admin.command('ping')
print("Pinged your deployment. You successfully connected to MongoDB!")
except Exception as e:
print(e)
asyncio.run(ping_server())

Este trecho de conexão usa a funcionalidade API estável, que você pode habilitar ao usar o driver Motor v. 2.5 e mais recente para se conectar ao servidor MongoDB v. 5.0 e mais recente. Ao usar esse recurso, você pode atualizar seu driver ou servidor sem se preocupar com problemas de compatibilidade com versões anteriores de qualquer comando coberto pela API estável.

Para saber mais sobre o recurso de API estável, consulte API estável no manual do servidor.

Observação

A partir de fevereiro de 2022, a API versionada é conhecida como API estável. Todos os conceitos e recursos permanecem os mesmos com esta mudança de nomenclatura.

Se estiver usando uma versão do MongoDB ou do driver não compatível com a funcionalidade Stable API, você pode usar o seguinte trecho de código para testar sua conexão com o MongoDB deployment no Atlas:

import asyncio
from motor.motor_asyncio import AsyncIOMotorClient
async def ping_server():
# Replace the placeholder with your Atlas connection string
uri = "<connection string>"
# Create a new client and connect to the server
client = AsyncIOMotorClient(uri)
# Send a ping to confirm a successful connection
try:
await client.admin.command('ping')
print("Pinged your deployment. You successfully connected to MongoDB!")
except Exception as e:
print(e)
asyncio.run(ping_server())

Se você estiver utilizando a biblioteca assíncrona do tornado, você poderá utilizar o seguinte código para conectar ao seu MongoDB deployment:

import tornado
import motor
async def ping_server():
# Replace the placeholder with your Atlas connection string
uri = "<connection string>"
# Set a 5-second connection timeout when creating a new client
client = motor.motor_tornado.MotorClient(uri, serverSelectionTimeoutMS=5000)
# Send a ping to confirm a successful connection
try:
await client.admin.command('ping')
print("Pinged your deployment. You successfully connected to MongoDB!")
except Exception as e:
print(e)
tornado.ioloop.IOLoop.current().run_sync(ping_server)

Se você precisar executar um servidor MongoDB em seu computador local para fins de desenvolvimento, em vez de usar um cluster do Atlas, será necessário concluir o seguinte:

  1. Baixe a versão Comunidade ou Enterprise do MongoDB Server.

  2. Instale e configure o servidor MongoDB.

  3. Inicie o servidor.

Importante

Sempre proteja seu servidor do MongoDB contra ataques maliciosos. Consulte nossa Lista de verificação de segurança para obter uma lista de recomendações de segurança.

Depois de iniciar com êxito o servidor MongoDB, especifique a connection string no código de conexão do driver.

Se o servidor MongoDB estiver sendo executado localmente, você poderá usar a connection string "mongodb://localhost:<port>", em que <port> é o número da porta que você configurou no servidor para escutar as conexões de entrada.

Se você precisar especificar um nome de host ou endereço IP diferente, consulte a entrada do Manual do servidor sobre cadeias de conexão.

Para testar se você pode se conectar ao seu servidor, substitua a connection string no exemplo de código Connect to MongoDB Atlas e execute-a.

A tabela de compatibilidade a seguir especifica a versão recomendada ou versões do driver Motor (Python assíncrono) para usar com uma versão específica do MongoDB.

A primeira coluna lista a versão do driver.

Importante

O MongoDB garante a compatibilidade entre o MongoDB Server e os drivers por três anos após a data de fim da vida útil (EOL) da versão do servidor. Para saber mais sobre a versão do MongoDB e as datas de EOL, consulte Agendamentos do ciclo de vida do software MongoDB.

Ícone
Explicação
Todas as funcionalidades são suportadas.
A versão Driver funcionará com a versão MongoDB, mas nem todos os novos recursos MongoDB são suportados.
Sem marca
A versão Driver não é testada com a versão MongoDB.
Versão do driver Motor (Python assíncrono)
MongoDB 7.0
MongoDB 6,0
MongoDB 5.0
MongoDB 4,4
MongoDB 4,2
MongoDB 4.0
MongoDB 3,6
MongoDB 3.4
MongoDB 3.2
MongoDB 3,0
MongoDB 2.6
3.4
3.3
3.2
3.1
3.0

O driver não suporta versões mais antigas do MongoDB.

A tabela de compatibilidade a seguir especifica a(s) versão(ões) recomendada(s) do driver Motor (Python assíncrono) para usar com uma versão específica do Python.

A primeira coluna lista a(s) versão(ões) do driver.

Versão do driver Motor (Python assíncrono)
Python 3.12
Python 3.11
Python 3.10
Python 3.9
Python 3.8
Python 3.7
3.4
3.3
3.2
3.1
3.0
  • Motor 3.3 e 3.4 wrap PyMongo 4.5

  • Motor 3.2 envolve PyMongo 4.4+

  • Motor 3.1 envolve PyMongo 4.2+

  • Motor 3.0 envolve PyMongo 4.1+

Observação

  • Para suporte a assíncrono, o Motor requer Python 3.4+ ou Python 3.3 com o pacote asyncio do PyPI.

  • A versão Motor 2.3 ou mais recente é compatível com Windows.

Para obter mais informações sobre como ler as tabelas de compatibilidade, consulte nosso guia de tabelas de compatibilidade do MongoDB.

← PyMongo