Menu Docs
Página inicial do Docs
/ / /
Manual da Biblioteca PHP
/

Especificar opções de conexão

Nesta página

  • Visão geral
  • Definir opções de conexão
  • Como utilizar o URI de conexão
  • Usando um objeto MongoDB\Client
  • Opções de URI de conexão
  • Opções de conjunto de réplicas
  • Opções de conexão
  • Opções de write concern
  • Opções de read concern
  • Opções de read preference
  • Opções de autenticação
  • Seleção de servidor e opções de descoberta
  • Configurações diversas
  • Documentação da API

Esta página descreve as opções de conexão e autenticação MongoDB disponíveis na biblioteca PHP.

Você pode configurar sua conexão especificando opções no URI de conexão ou passando-as para o construtor MongoDB\Client .

Se você passar um URI de conexão para o construtor MongoDB\Client , poderá incluir opções de conexão no URI como pares <name>=<value> . No exemplo a seguir, o URI de conexão define a opção tls como true e a opção tlsCertificateKeyFile como /path/to/file.pem:

// Replace the placeholders with your actual hostname, port, and path to the certificate key file
$uri = "mongodb://<hostname>:<port>/?tls=true&tlsCertificateKeyFile=/path/to/file.pem";
// Create a MongoDB client
$client = new MongoDB\Client($uri);

Você pode passar as opções de conexão para o construtor MongoDB\Client em vez de incluí-las em seu URI de conexão.

O exemplo seguinte mostra como utilizar o parâmetro $uriOptions do construtor MongoDB\Client para configurar opções de conexão:

// Replace the placeholders with your actual hostname and port
$uri = "mongodb://<hostname>:<port>/";
// Set the connection options
// Replace the placeholder with the actual path to the certificate key file
$uriOptions = [
'tls' => true,
'tlsCertificateKeyFile' => '/path/to/file.pem'
];
// Create a MongoDB client with the URI and options
$client = new Client($uri, $uriOptions);

Observação

Se você especificar uma opção no parâmetro $uriOptions e no URI de conexão, o valor em $uriOptions terá precedência.

As seções a seguir descrevem as opções que você pode definir para sua conexão com o MongoDB. Cada opção de conexão está vinculada à sua entrada correspondente no manual do MongoDB Server .

Importante

Codificação percentual

Se o valor de uma opção de conexão contiver caracteres especiais, você deverá codificar por cento o valor antes de incluí-lo no URI de conexão. Você pode usar o rawurlencode() método para codificar esses valores de acordo com a sintaxe do URI especificada em RFC 3986.

Não codifique por cento as opções de conexão ao incluí-las no parâmetro $uriOptions .

Para saber mais, consulte os seguintes recursos:

  • RFC 3986

  • código bruto no manual do PHP

Opção de conexão
Descrição
Data Type: bool
MongoDB\Client Example: $uriOptions = ['directConnection' => true];
Connection URI Example: directConnection=true
Data Type: string
MongoDB\Client Example: $uriOptions = ['replicaSet' => 'replicaSetName'];
Connection URI Example: replicaSet=replicaSetName

Para saber mais sobre as opções de TLS disponíveis na biblioteca PHP, consulte a página deTLS .

Opção de conexão
Descrição
Data Type: int
MongoDB\Client Example: $uriOptions = ['connectTimeoutMS' => 2000];
Connection URI Example: connectTimeoutMS=2000
Data Type: int
MongoDB\Client Example: $uriOptions = ['socketTimeoutMS' => 20000];
Connection URI Example: socketTimeoutMS=20000
Opção de conexão
Descrição
Data Type: string
MongoDB\Client Example: $uriOptions = ['compressors' => 'snappy,zstd,zlib'];
Connection URI Example: compressors=snappy,zstd,zlib
Data Type: int
MongoDB\Client Example: $uriOptions = ['zlibCompressionLevel' => 3];
Connection URI Example: zlibCompressionLevel=3
Opção de conexão
Descrição
Data Type: string
MongoDB\Client Example: $uriOptions = ['w' => 'majority'];
Connection URI Example: w=majority
Data Type: int
MongoDB\Client Example: $uriOptions = ['wTimeoutMS' => 10000];
Connection URI Example: wTimeoutMS=10000
Data Type: bool
MongoDB\Client Example: $uriOptions = ['journal' => true];
Connection URI Example: journal=true
Opção de conexão
Descrição
Data Type: string
MongoDB\Client Example: $uriOptions = ['readConcernLevel' => 'majority'];
Connection URI Example: readConcernLevel=majority
Opção de conexão
Descrição
MongoDB\Client Example: $uriOptions = ['readPreference' => 'secondaryPreferred'];
Connection URI Example: readPreference=secondaryPreferred
Data Type: int
MongoDB\Client Example: $uriOptions = ['maxStalenessSeconds' => 30];
Connection URI Example: maxStalenessSeconds=30
Data Type: array
MongoDB\Client Example:
$uriOptions = [
'readPreferenceTags' => [
['dc' => 'ny', 'rack' => 'r1'],
[],
],
];

Exemplo de URI de conexão: readPreferenceTags=dc:ny,rack:r1&readPreferenceTags=

Para saber mais sobre as opções de autenticação disponíveis na biblioteca PHP, consulte Mecanismos de autenticação.

Opção de conexão
Descrição
Data Type: int
MongoDB\Client Example: $uriOptions = ['localThresholdMS' => 20];
Connection URI Example: localThresholdMS=20
Data Type: int
MongoDB\Client Example: $uriOptions = ['serverSelectionTimeoutMS' => 5000];
Connection URI Example: serverSelectionTimeoutMS=5000
Data Type: bool
MongoDB\Client Example: $uriOptions = ['serverSelectionTryOnce' => false];
Connection URI Example: serverSelectionTryOnce=false
Data Type: int
MongoDB\Client Example: $uriOptions = ['heartbeatFrequencyMS' => 30000];
Connection URI Example: heartbeatFrequencyMS=30000
Data Type: int
MongoDB\Client Example: $uriOptions = ['socketCheckIntervalMS' => 4000];
Connection URI Example: socketCheckIntervalMS=4000
Opção de conexão
Descrição
Data Type: string
MongoDB\Client Example: $uriOptions = ['appName' => 'myApp'];
Connection URI Example: appName=myApp
Data Type: bool
MongoDB\Client Example: $uriOptions = ['retryReads' => false];
Connection URI Example: retryReads=false
Data Type: bool
MongoDB\Client Example: $uriOptions = ['retryWrites' => false];
Connection URI Example: retryWrites=false
Data Type: bool
MongoDB\Client Example: $uriOptions = ['loadBalanced' => true];
Connection URI Example: loadBalanced=true
Data Type: int
MongoDB\Client Example: $uriOptions = ['srvMaxHosts' => 5];
Connection URI Example: srvMaxHosts=5

Para obter mais informações sobre a classe MongoDB\Client , consulte a seguinte documentação da API da biblioteca PHP:

Para obter mais informações sobre a classe MongoDB\Driver\ReadPreference , consulte a seguinte documentação da API de extensão PHP:

Voltar

Criar um cliente MongoDB