Un tableau d'options pour la connexion. Les options disponibles sont :
-
"authMechanism"
Les mécanismes disponibles sont :
-
"authSource"
Doit être défini au nom de la base de données dans laquelle
l'utilisateur est défini.
-
"connect"
Si le constructeur doit se connecter avant de retourner l'objet. Par défaut
TRUE
. Lorsque vaut FALSE
, le driver va
automatiquement se connecter au serveur chaque
fois qu'il est nécessaire d'y faire une requête. Mais vous pouvez aussi
exécuter la méthode MongoClient::connect() manuellement.
Avertissement
Cette option n'est pas supportée via la chaîne de connexion.
-
"connectTimeoutMS"
Durée pendant laquelle une connexion peut rester ouverte avant
de se fermer, en millisecondes. Vaut par défaut 60000
(60 secondes).
Si -1
est spécifié, aucun délai maximal d'attente
de connexion ne sera appliqué et PHP va utiliser la valeur de
default_socket_timeout.
-
"db"
La base de données sur laquelle l'authentification doit s'effectuer ;
elle peut être spécifiée ici au lieu de l'inclure dans la liste des hôtes.
Ce paramètre écrase une base de données fournie dans la liste des hôtes.
-
"fsync"
Lorsque "fsync"
est défini, toutes les opérations
en écriture seront bloquantes tant que la base de données ne les aura pas
écrites sur le disque. Ceci rend les opérations d'écriture plus lentes,
mais garantie que les écritures réussissent et que les opérations peuvent
être retrouvées dans le cas d'un échec total du système.
Si le serveur MongoDB a son historisation d'activé, cette option est
identique à "journal". Si l'historisation n'est
pas activée, cette option s'assure que les opérations d'écriture
seront synchronisées dans les fichiers de base de données sur le disque.
Note:
Si l'historisation est activée, les utilisateurs sont vivement
encouragés à utiliser l'option "journal"
plutôt que "fsync"
. N'utilisez pas
"fsync"
et "journal"
en même
temps ; cela produirait une erreur.
-
"journal"
Lorsque "journal"
est défini, toutes les opérations
en écriture seront bloquantes tant que la base de données n'aura pas
reflétée ces modifications dans le journal du disque. Ceci rend les
opérations en écriture plus lentes, mais garantie que les écritures
ont réussi et que les opérations peuvent être retrouvées en cas
d'échec total du système.
Note:
Si cette option est utilisée et que l'historisation est activée,
MongoDB 2.6+ va émettre une erreur, et l'écriture échouera ; les
anciennes versions de serveur vont simplement ignorer cette option.
-
"gssapiServiceName"
Défini le » service principal Kerberos.
Uniquement applicable lorsque authMechanism=GSSAPI. Par défaut, "mongodb".
-
"password"
Le mot de passe peut être spécifié ici, au lieu de l'inclure dans la
liste des hôtes. Ceci est utile tout spécialement si le mot de
passe contient le caractère "@". Ce paramètre écrase le mot de passe
défini dans la liste des hôtes.
-
"readPreference"
Spécifie le type de préférence de lecture. Les préférences de lecture
vous permettent de contrôler quel secondaire sera utilisé pour lire
les données.
Les valeurs possibles sont : MongoClient::RP_PRIMARY
,
MongoClient::RP_PRIMARY_PREFERRED
,
MongoClient::RP_SECONDARY
,
MongoClient::RP_SECONDARY_PREFERRED
et
MongoClient::RP_NEAREST
.
Voir la documentation sur les préférences
de lecture pour plus d'informations.
-
"readPreferenceTags"
Spécifie les tags pour les préférences de lecture. Les tags peuvent
être utilisés en combinaison de l'option readPreference
afin de contrôler le type de données que l'on doit lire depuis le secondaire.
Voir la documentation sur les préférences
de lecture pour plus d'informations.
-
"replicaSet"
Nom du pool de réplicats sur lequel se connecter. Si fourni, le primaire
sera déterminé en utilisant la commande ismaster
sur les
serveurs, ainsi le pilote peut se connecter à un serveur qui n'était même pas
listé. Voyez l'exemple après pour plus de détails.
-
"secondaryAcceptableLatencyMS"
Lors d'une lecture depuis un secondaire (en utilisant ReadPreferences), ne pas
lire depuis les secondaires dont on sait que la latence dépasse
secondaryAcceptableLatencyMS
. Par défaut, vaut 15
-
"socketTimeoutMS"
La durée qu'une opération de socket (lecture ou écriture)
peut prendre avant d'atteindre le délai maximal d'attente, en
millisecondes. Par défaut, vaut 30000
(30 secondes).
Si -1
est spécifié, les opérations de socket
peuvent bloquer indéfiniement. Cette option peut également être
définie pour chaque opération en utilisant la méthode
MongoCursor::timeout() pour les requêtes,
ou l'option "socketTimeoutMS"
pour les méthodes
d'écriture.
Note:
Ceci est un délai d'attente maximal côté client. Si une opération
en écriture atteint le délai maximal d'attente, il n'y a aucune façon
de savoir si le serveur gère actuellement l'écriture ou non,
sachant que l'exception MongoCursorTimeoutException
sera émise au lieu de retourner un résultat d'écriture.
-
"ssl"
Un booléen pour spécifier si l'on souhaite ou non activer SSL
pour les connexions MongoDB. Les autres options comme
les certificats peuvent être définies avec
Options de contexte SSL.
-
"username"
Le nom d'utilisateur peut être spécifié ici, au lieu de l'inclure
dans la liste des hôtes. Ceci est utile tout spécialement si
le nom d'utilisateur contient un caractère ":".
Ce paramètre écrase le nom d'utilisateur défini dans
la liste des hôtes.
-
"w"
L'option w
contrôle la
durée de blocage du driver
lors d'une écriture.La valeur par défaut est 1
.
Une valeur entière positive contrôle le nombre
de noeuds dans un jeu de réplication qui ont reçu une instruction
d'écriture avant que le driver ne continue. Une valeur de
3
signifie que l'écriture a été appliquée au primaire
ainsi qu'à deux autres membres du jeu de réplication.
Une chaîne est utilisée pour contrôler quels jeux de tags seront pris
en compte pour les écritures. La chaîne "majority"
est spéciale et s'assure que les opérations d'écriture ont été appliquées
à la majorité (plus de 50%) des noeuds concernés.
-
"wTimeoutMS"
Cette option spécifie la durée limite, en millisecondes, pour une
prise en compte de la
préoccupation d'écriture.
Ceci n'est applicable que pour les opérations en écriture où
"w"
est supérieur à 1
, sachant
que le délai d'attente maximal concerne aussi la réplication.
Si la préoccupation en écriture n'est pas respectée pendant le temps
limite, une exception MongoCursorException
sera émise. Une valeur de 0
peut être spécifiée
pour bloquer indéfiniement. La valeur par défaut est
10000
(dix secondes).
Les options suivantes sont obsolètes et ne doivent plus être utilisées :