gpt4 book ai didi

java - 如何使用 OpenShift 中的 JAVA 连接到 MongoDB 服务器?

转载 作者:可可西里 更新时间:2023-11-01 10:03:45 26 4
gpt4 key购买 nike

我在 OpenShift 中创建了一个 MongoDB 实例。我可以通过 RockMongo 连接到它,这是 OpenShift 提供的一项服务。

我正在尝试使用 JAVA 连接到我的实例,但我刚收到一个 Connection refuesed 错误。此外,我无法使用 RoboMongo 连接它。

在我的 RockMongo 状态选项卡中,我看到以下信息:

Host: 127.11.201.2
Port: 27017

RoboMongoMongoLab 实例一起使用可以很好地为其提供正确的凭据,但这里使用 OpenShift 时它无法连接到实例。

在我的 JAVA 应用程序中,我正在尝试以下操作:

MongoCredential credential = MongoCredential.createCredential(
Const.MONGO_USERNAME, Cont.MONGO_DB,
Const.MONGO_PASSWORD.toCharArray());
mongo = new MongoClient(new ServerAddress(Const.MONGO_URI), Arrays.asList(credential));

127.11.201.2 作为 MONGO_URI。为什么我无法连接到我的实例?我做错了什么?

P.S 使用 putty 我可以通过执行命令 mongo 连接到我的 mongo 实例。

最佳答案

OpenShift provides environment variables ,您应该使用它来连接到您的 MongoDB。

  • OPENSHIFT_MONGODB_DB_HOST MongoDB IP 地址
  • OPENSHIFT_MONGODB_DB_PORT MongoDB 端口
  • OPENSHIFT_MONGODB_DB_USERNAME MongoDB 用户名
  • OPENSHIFT_MONGODB_DB_PASSWORD MongoDB 密码
  • OPENSHIFT_MONGODB_DB_URL MongoDB 连接 URL(例如 mongodb://<username>:<password>@<hostname>:<port>/)

我正在使用一行代码连接到数据库:

new MongoClient(new MongoClientURI(System.getenv("OPENSHIFT_MONGODB_DB_URL")));

关于java - 如何使用 OpenShift 中的 JAVA 连接到 MongoDB 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30128804/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com