QoreDB LogoQoreDB

MongoDB

Connectez QoreDB à MongoDB, y compris aux instances autonomes, aux jeux de réplicas et aux clusters MongoDB Atlas via des enregistrements SRV.

QoreDB se connecte à MongoDB via le pilote natif officiel. Les instances autonomes, les jeux de réplicas (replica sets) et les clusters MongoDB Atlas fonctionnent tous avec le même flux de connexion.

Connexion rapide

Le moyen le plus rapide est de coller une URI de connexion. QoreDB reconnaît les schémas mongodb:// et mongodb+srv://.

mongodb://UTILISATEUR:MOTDEPASSE@HOTE:27017/BASEDEDONNEES
mongodb+srv://UTILISATEUR:MOTDEPASSE@CLUSTER.mongodb.net/BASEDEDONNEES?authSource=admin

Ouvrez Nouvelle Connexion (New Connection), choisissez MongoDB, collez l'URI, cliquez sur Tester la connexion (Test connection), puis sur Enregistrer (Save).

Champs de connexion

Si vous préférez le formulaire, remplissez directement ces champs :

ChampRequisRemarques
Hôte (Host)OuiNom d'hôte pour mongodb://, ou nom d'hôte SRV (sans _mongodb._tcp.) pour +srv.
PortOptionnelPar défaut 27017. Ignoré par mongodb+srv:// (résolu depuis les enregistrements SRV).
UtilisateurOptionnelSi votre cluster nécessite une authentification.
Mot de passeOptionnelStocké chiffré dans le coffre-fort.
Base de donnéesOptionnelLa base de données à laquelle se connecter. L'utilisateur est authentifié avec authSource, pas ceci.
authSourceOptionnelBase de données où réside l'utilisateur. Par défaut admin pour les config gérées.
replicaSetOptionnelNom du replica set lors de la connexion directe à un replica set sans SRV.
TLS / SSLOptionnelBooléen. Activé implicitement pour mongodb+srv://.

mongodb:// vs mongodb+srv://

Les deux schémas font la même chose mais découvrent les hôtes différemment.

  • mongodb:// se connecte directement à un ou plusieurs noms d'hôtes que vous spécifiez. Utilisez-le pour les instances auto-hébergées, les ReplicaSets où vous listez explicitement les membres, ou le développement local.
  • mongodb+srv:// recherche les enregistrements SRV et TXT pour découvrir les hôtes et les options par défaut. Le TLS est activé par défaut. C'est ce que MongoDB Atlas vous donne, et ce que vous souhaitez généralement pour tout cluster géré dans le cloud.
# Autonome (standalone) auto-hébergé ou replica set avec des hôtes explicites
mongodb://UTILISATEUR:MOTDEPASSE@host1:27017,host2:27017,host3:27017/myapp?replicaSet=rs0

# Atlas (ou tout fournisseur avec une configuration SRV appropriée)
mongodb+srv://UTILISATEUR:MOTDEPASSE@cluster0.abc12.mongodb.net/myapp

Authentification

L'authentification Mongo est liée à une base de données (appelée la source d'authentification ou authSource), qui n'est pas nécessairement la base de données où se trouvent vos données. Trois scénarios :

  • Atlas : l'utilisateur réside généralement dans admin, alors définissez authSource=admin (Atlas le fait pour vous dans la chaîne de connexion).
  • Auto-hébergé avec les utilisateurs dans la base de données de données : omettez authSource, ou définissez-le sur la même base de données que vous souhaitez utiliser.
  • Aucune authentification : fonctionne pour les configurations localhost non authentifiées ; omettez simplement l'utilisateur et le mot de passe.

Si l'authentification échoue avec une URI qui fonctionne par ailleurs, la cause la plus courante est un mauvais authSource.

TLS

mongodb+srv:// active automatiquement le TLS. Pour mongodb://, activez explicitement le TLS via le formulaire (ou avec ?tls=true sur l'URI). Pour les certificats auto-signés en développement, ajoutez ?tlsInsecure=true, mais ne l'utilisez jamais pour le trafic de production.

Replica sets et transactions

QoreDB prend en charge les transactions multi-documents, mais MongoDB nécessite un jeu de réplicas (replica set) pour les activer. Un MongoDB autonome et à instance unique ne prend pas en charge les transactions, quel que soit le client. Si vous essayez d'en démarrer une, le serveur la rejettera.

Pour le développement local, le moyen le plus simple de faire fonctionner les transactions est d'exécuter un replica set à un seul nœud :

docker run -d --name mongo-rs -p 27017:27017 \
  mongo:7 --replSet rs0 --bind_ip_all
docker exec -it mongo-rs mongosh --eval 'rs.initiate()'

Ensuite, connectez-vous avec mongodb://localhost:27017/myapp?replicaSet=rs0.

L'éditeur MongoDB

Lorsque vous ouvrez un onglet de requête sur une connexion MongoDB, vous obtenez un éditeur compatible JSON avec quelques extras :

  • Mise en évidence des opérateurs : les opérateurs MongoDB ($match, $group, $lookup, etc.) sont visuellement distincts des clés régulières.
  • Autocomplétion sur les collections : les noms de collection de la connexion active apparaissent comme des suggestions.
  • Linting JSON en temps réel : les JSON invalides sont signalés au fur et à mesure que vous tapez.
  • Validation du pipeline d'agrégation : certains opérateurs côté serveur considérés comme dangereux ($function, $accumulator, $where) sont rejetés avant d'être envoyés. La profondeur du pipeline est également plafonnée.

Vous pouvez exécuter les méthodes CRUD standard (find, insertOne, updateMany, deleteOne, etc.) et les pipelines aggregate.

Une fois connecté, l'arborescence de la barre latérale affiche :

Connexion → Base de données → Collections → (Index)

Mongo n'a pas de schémas fixes, donc QoreDB échantillonne des documents pour inférer les champs lorsque vous ouvrez une collection. La vue des données est conçue pour les données non structurées : JSON réductible, filtres par champ, et édition en ligne.

Problèmes courants

Où aller ensuite

Newsletter

Restez informé des nouveautés

Rejoignez notre newsletter pour recevoir les mises à jour majeures, les nouveaux drivers et nos coulisses techniques.

🎁 Bonus : Recevez notre fiche mémo d'optimisation SQL — 9 pages, PostgreSQL / MySQL / SQLite (PDF) !