我是MongoDB地图集的新手,在连接mongoDB地图集时遇到了困难。我收到的错误消息是“身份验证失败”。
用于连接的代码如下:
'mongodb_atlas' => [
'driver' => 'mongodb',
'dsn' => 'mongodb+srv://myusername:mypassword@mycluster.99xxx.mongodb.net/mydbname?retryWrites=true&w=majority',
'database' => 'mydbname',
]
尽管我在dsn中输入的用户名和密码与MongoDB Atlas中的用户名和密码相匹配。我的密码有什么问题吗?解决办法是什么?如果有人能帮忙,我非常感激。
注意:
我使用的是8.x版和PHP版本8.x
发布于 2021-01-23 11:22:24
我假设您正在使用jenssegers/laravel-mongodb
包连接到MongoDB。
您可以检查MongoDB DSN的结构,用于独立、共享集群和MongoDB文档中的复制集。
要连接到MongoDB地图集,dsn
的构造如下
'mongodb_conn' => [
'driver' => 'mongodb',
'dsn'=>'mongodb://username:password@host1,host2/defaultauthdb?ssl=true&replicaSet=replicaSet&authSource=admin',
'database' => 'my_data',
]
您缺少了ssl=true
参数,但是服务器需要支持它。所以好好看看吧。
我知道您正在使用+srv
来使用TLS/SSL连接,但也许上面的另一种格式更有效。
https://stackoverflow.com/questions/65857716
复制相似问题