# MongoDB username and password escaping issue

**URL:** <https://forum.pritunl.com/t/mongodb-username-and-password-escaping-issue/820>\
**Category:** Pritunl VPN\
**Tags:** pritunl\
**Created:** [February 28, 2023, 4:42pm UTC](https://forum.pritunl.com/t/mongodb-username-and-password-escaping-issue/820 "2023-02-28T16:42:30Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![margus](https://forum.pritunl.com/user_avatar/forum.pritunl.com/margus/32/189_2.png) [@margus](https://forum.pritunl.com/u/margus)\
**Post date:** [February 28, 2023, 4:42pm UTC](https://forum.pritunl.com/t/mongodb-username-and-password-escaping-issue/820/1 "2023-02-28T16:42:30Z")

</div>

Hello,

suddenly I started to get the following error below and not sure why.

I’m using MongoDB replicas

The format is as follows for the setup and I dont have any weird characters in the username nor password

```auto
mongodb://yyyyyyyyyy:xXxXxXXxXXxxXXX@vpn-db-one.example.com:27017,yyyyyyyyyy:xXxXxXXxXXxxXXX@vpn-db-two.example.com:27017,yyyyyyyyyy:xXxXxXXxXXxxXXX@vpn-db-three.example.com:27017/pritunl?directConnection=true&tls=true&authSource=admin

```

```auto
[undefined][2023-02-28 16:37:19,006][ERROR] Error connecting to mongodb server
Traceback (most recent call last):
  File "/usr/lib/pritunl/lib/python3.10/site-packages/pritunl/setup/server.py", line 288, in setup_server
    utils.get_db_ver_int()
  File "/usr/lib/pritunl/lib/python3.10/site-packages/pritunl/utils/misc.py", line 101, in get_db_ver_int
    return get_int_ver(get_db_ver())
  File "/usr/lib/pritunl/lib/python3.10/site-packages/pritunl/utils/misc.py", line 93, in get_db_ver
    return _get_version_doc().get('version') or (
  File "/usr/lib/pritunl/lib/python3.10/site-packages/pritunl/utils/misc.py", line 79, in _get_version_doc
    client = pymongo.MongoClient(settings.conf.mongodb_uri,
  File "/usr/lib/pritunl/lib/python3.10/site-packages/pymongo/mongo_client.py", line 670, in __init__
    res = uri_parser.parse_uri(
  File "/usr/lib/pritunl/lib/python3.10/site-packages/pymongo/uri_parser.py", line 494, in parse_uri
    user, passwd = parse_userinfo(userinfo)
  File "/usr/lib/pritunl/lib/python3.10/site-packages/pymongo/uri_parser.py", line 61, in parse_userinfo
    raise InvalidURI("Username and password must be escaped according to "
pymongo.errors.InvalidURI: Username and password must be escaped according to RFC 3986, use urllib.parse.quote_plus().

```

pritunl version  
pritunl v1.30.3354.99

Any ideas why this happens ?

---

<div class="post-metadata">

**Author:** ![margus](https://forum.pritunl.com/user_avatar/forum.pritunl.com/margus/32/189_2.png) [@margus](https://forum.pritunl.com/u/margus)\
**Post date:** [March 1, 2023, 8:51am UTC](https://forum.pritunl.com/t/mongodb-username-and-password-escaping-issue/820/2 "2023-03-01T08:51:27Z")

</div>

got it sorted, was new to mongodb and the connection string was wrong, should have just been single user auth not every host their own.
