Я хочу подключиться к удаленному серверу Mongodb. И в процессе я получаю ошибку
selection error: server selection timeout, current topology: { Type: Unknown, Servers: [{ Addr: <addr>:<port>, Type: Unknown, State: Connected, Average RTT: 0, Last error: connection() : dial tcp <addr>:<port>: i/o timeout }, ] }
Это мой код,
func Connect() {
client, err := mongo.NewClient(options.Client().ApplyURI("mongodb://server_addr:port").
SetAuth(options.Credential{
AuthSource: "db_name", Username: "user", Password: "password",
}))
ctx, cancel := context.WithTimeout(context.Background(), 60*time.Second)
defer cancel()
err = client.Connect(ctx)
//ping db
err = client.Ping(ctx, readpref.Primary())
if err != nil {
log.Fatal("Error while connecting db ", err)
}
log.Println("Connected\n")
}
В файле etc / mongod.conf я ввел
bindIpAll: true
И разрешить порт через брандмауэр
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
, но я все еще не могу понять, что вызывает ошибку. Я все еще новичок, поэтому будет очень полезно, если вы поможете мне понять. Спасибо!