我在尝试连接到Ubuntu Server中的远程mongoDb时遇到了一些问题。
我尝试连接的数据库名称是“users”。
我的用户具有DB“users”的dbAdmin角色。
我还有一位拥有数据库“admin”的root角色的用户。
当节点到达连接字符串行时,这些是我得到的错误:
(node:14948) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): MongoError: Authentication failed.
(node:14948) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
我一直在尝试使用所有这些代码:
这是基本结构,但它的目标是管理数据库,我需要它以用户数据库为目标:mongoose.connect('mongodb://usersDb_admin:secretPassword123@10x.25x.21x.23x:27017);
这个应该连接到用户,但它不起作用:mongoose.connect('mongodb://usersDb_admin:secretPassword123@10x.25x.21x.23x:27017/users');
这是我尝试过的最复杂的事情:mongoose.connect('mongodb://usersDb_admin:secretPassword123@10x.25x.21x.23x:27017/users?authSource=users&w=1');
我还尝试使用dbOwner和root用户的所有以前的连接字符串。只有第一个,它连接,但正如我所说,它连接到管理数据库,我需要它连接到用户数据库(我知道这是显而易见的,我只是提到这一点来澄清服务器/猫鼬/远程访问工作正常。)