# How to connect MongoDB with node-red

**URL:** <https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620>\
**Category:** General\
**Created:** [5 January 2021 23:07 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620 "2021-01-05T23:07:25Z")\
**Posts on this page:** 18\
**Page:** 1

<div class="post-metadata">

**Author:** ![sabayke](https://avatars.discourse-cdn.com/v4/letter/s/ecc23a/32.png) [@sabayke](https://discourse.nodered.org/u/sabayke)\
**Post date:** [5 January 2021 23:07 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/1 "2021-01-05T23:07:25Z")

</div>

I have this flow

 ![Capture](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/c/3/c3e3722364bc9446e76f53806a34a0a231cc13d9.jpeg)  
when I try to deploy my flows I get this message Error: More than 1 database name in URL  
here is my url : mongodb+srv://username:password1234@cluster0.hx0l5.mongodb.net/capteurs?retryWrites=true&w=majority

---

<div class="post-metadata">

**Author:** ![Steve-Mcl](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/steve-mcl/32/4826_2.png) [@Steve-Mcl](https://discourse.nodered.org/u/Steve-Mcl)\
**Post date:** [5 January 2021 23:17 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/2 "2021-01-05T23:17:47Z")

</div>

Might be due to specifying the database name "capteurs" in the host field and in the database field?

Try setting the connection host to the host name / cluster DNS name only (i.e. remove `/capteurs`) as suggested in the [readme](https://flows.nodered.org/node/node-red-node-mongodb)

---

<div class="post-metadata">

**Author:** ![sabayke](https://avatars.discourse-cdn.com/v4/letter/s/ecc23a/32.png) [@sabayke](https://discourse.nodered.org/u/sabayke)\
**Post date:** [5 January 2021 23:27 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/3 "2021-01-05T23:27:58Z")

</div>

I still have the same error

---

<div class="post-metadata">

**Author:** ![knolleary](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/knolleary/32/3_2.png) [@knolleary](https://discourse.nodered.org/u/knolleary)\
**Post date:** [5 January 2021 23:49 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/4 "2021-01-05T23:49:49Z")

</div>

@sabayke

You currently have a full url in the Host field - including `<username>:<password>` and other details.

Have you tried with just the Host name in that field - `cluster0.hx0l5.mongodb.net` ?

---

<div class="post-metadata">

**Author:** ![sabayke](https://avatars.discourse-cdn.com/v4/letter/s/ecc23a/32.png) [@sabayke](https://discourse.nodered.org/u/sabayke)\
**Post date:** [5 January 2021 23:55 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/5 "2021-01-05T23:55:40Z")

</div>

yes but i get this error MongoError: failed to connect to server [[cluster0.hx0l5.mongodb.net:27017](http://cluster0.hx0l5.mongodb.net:27017)]

---

<div class="post-metadata">

**Author:** ![knolleary](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/knolleary/32/3_2.png) [@knolleary](https://discourse.nodered.org/u/knolleary)\
**Post date:** [5 January 2021 23:58 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/6 "2021-01-05T23:58:08Z")

</div>

Ah right - you're trying to use the srv record... I assume the node doesn't know how to work with those.

If I remember rightly, the hosted mongodb service can also provide you the 'normal' hostname/IP to use, rather than the +srv connection string.

---

<div class="post-metadata">

**Author:** ![UnborN](https://avatars.discourse-cdn.com/v4/letter/u/4491bb/32.png) [@UnborN](https://discourse.nodered.org/u/UnborN)\
**Post date:** [6 January 2021 00:17 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/7 "2021-01-06T00:17:02Z")

</div>

Another possible reason .. although i havent worked with cloud based mongo dbs .. could be that Atlas server requires a step to whitelist an IP from where you want to access the cluster.

**[Add Your Connection IP Address to IP Access List](https://docs.atlas.mongodb.com/security/add-ip-address-to-list)**

@sabayke Have you done this step ?

---

<div class="post-metadata">

**Author:** ![sabayke](https://avatars.discourse-cdn.com/v4/letter/s/ecc23a/32.png) [@sabayke](https://discourse.nodered.org/u/sabayke)\
**Post date:** [6 January 2021 00:27 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/8 "2021-01-06T00:27:14Z")

</div>

that's right !

 ![ip](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/0/c/0c049217d9efa3447541f6668b91378bb63898aa.jpeg)

---

<div class="post-metadata">

**Author:** ![UnborN](https://avatars.discourse-cdn.com/v4/letter/u/4491bb/32.png) [@UnborN](https://discourse.nodered.org/u/UnborN)\
**Post date:** [6 January 2021 01:18 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/9 "2021-01-06T01:18:03Z")

</div>

With the [Compass](https://www.mongodb.com/try/download/compass) tool.. can you connect to your cloud db ?

Also .. what mongodb node / version are you using ?  
That configuration screenshot doesnt look like its the **[node-red-node-mongodb 0.2.4](https://flows.nodered.org/node/node-red-node-mongodb)**

Can you try the above node instead that is more often updated and its config has options closer to your needs

![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/e/4/e498fc989f7117f57f5d6cf75f5fc58dc1ac322a.png)

---

<div class="post-metadata">

**Author:** ![sabayke](https://avatars.discourse-cdn.com/v4/letter/s/ecc23a/32.png) [@sabayke](https://discourse.nodered.org/u/sabayke)\
**Post date:** [6 January 2021 01:23 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/10 "2021-01-06T01:23:27Z")

</div>

yes when i try to connect compass with my db it work nicely

ok i will do it

---

<div class="post-metadata">

**Author:** ![sabayke](https://avatars.discourse-cdn.com/v4/letter/s/ecc23a/32.png) [@sabayke](https://discourse.nodered.org/u/sabayke)\
**Post date:** [6 January 2021 01:45 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/11 "2021-01-06T01:45:10Z")

</div>

i have 2 versions ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/c/c/cc2740b37fe20f6fe1eb506ae7d3c66637479e5a.png)

---

<div class="post-metadata">

**Author:** ![UnborN](https://avatars.discourse-cdn.com/v4/letter/u/4491bb/32.png) [@UnborN](https://discourse.nodered.org/u/UnborN)\
**Post date:** [6 January 2021 01:46 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/12 "2021-01-06T01:46:07Z")

</div>

i guess you have to uninstall the other node first

---

<div class="post-metadata">

**Author:** ![sabayke](https://avatars.discourse-cdn.com/v4/letter/s/ecc23a/32.png) [@sabayke](https://discourse.nodered.org/u/sabayke)\
**Post date:** [6 January 2021 01:47 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/13 "2021-01-06T01:47:48Z")

</div>

i tried this ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/6/7/670023f24012f63a1c023ffdc4cb58b71cbd1606.png)

but i didn't change anything

---

<div class="post-metadata">

**Author:** ![UnborN](https://avatars.discourse-cdn.com/v4/letter/u/4491bb/32.png) [@UnborN](https://discourse.nodered.org/u/UnborN)\
**Post date:** [6 January 2021 01:52 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/14 "2021-01-06T01:52:40Z")

</div>

you have to be in the `c:\Users\owner\.node-red` folder to run that command  
and make sure node red is not running

but why dont you uninstall it from the Palette that is easier ?  
first you have to delete any instances of the mongo nodes in your flows and also any Configuration nodes related to it

---

<div class="post-metadata">

**Author:** ![sabayke](https://avatars.discourse-cdn.com/v4/letter/s/ecc23a/32.png) [@sabayke](https://discourse.nodered.org/u/sabayke)\
**Post date:** [6 January 2021 02:05 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/15 "2021-01-06T02:05:14Z")

</div>

i get this

 ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/5/4/5457ca228cc3aef0b0e1cd9046daf44c828ab0d0.png)

---

<div class="post-metadata">

**Author:** ![UnborN](https://avatars.discourse-cdn.com/v4/letter/u/4491bb/32.png) [@UnborN](https://discourse.nodered.org/u/UnborN)\
**Post date:** [6 January 2021 02:07 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/16 "2021-01-06T02:07:22Z")

</div>

> [@knolleary](#):
>
> [cluster0.hx0l5.mongodb.net](http://cluster0.hx0l5.mongodb.net)

You are using again the whole string .. use only the server `cluster0.hx0l5.mongodb.net` in HOST

---

<div class="post-metadata">

**Author:** ![sabayke](https://avatars.discourse-cdn.com/v4/letter/s/ecc23a/32.png) [@sabayke](https://discourse.nodered.org/u/sabayke)\
**Post date:** [6 January 2021 02:08 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/17 "2021-01-06T02:08:49Z")

</div>

it work thank you so much

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [7 March 2021 02:08 UTC](https://discourse.nodered.org/t/how-to-connect-mongodb-with-node-red/38620/18 "2021-03-07T02:08:56Z")

</div>

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.
