Для меня решение было , а не , чтобы избежать пути, в отличие от документации на docs.mongodb.com .Поэтому попробуйте
mongodb: ///tmp/mongodb-27017.sock
вместо
mongodb: //% 2Ftmp%2Fmongodb-27017.sock
И, конечно, убедитесь, что файл сокета существует:
$ ls -al /tmp/mongodb-27017.sock
srwxrwxrwx 1mongodb mongodb 0 апреля 1 21:47 /tmp/mongodb-27017.sock
Более полный пример использования учетной записи пользователя из другой базы данных, а не той, к которой мы подключаемся:
mongodb: // foo: pass@/tmp/mongodb-27017.sock/somedb? AuthSource = admin
Здесь устанавливается соединение с базой данных somedb пользователем foo , который является учетной записью пользователя, хранящейся в базе данных admin .