【发布时间】:2016-12-27 17:27:00
【问题描述】:
我正在使用 spring boot 并使用 mongodb 数据库创建了一个 Web 应用程序。在本地,我使用命令提示符“mongod”和“mongo”来查询我在 UI 中输入的数据。
我当前的应用程序使用在 localhost 上运行的 MongoDb,默认端口为 27017。我的 Web 应用程序反映了存储在数据库中的数据。当我将此应用程序推送到 Cloud Foundry 并绑定 MONGODB 服务时,它使用了另一个数据库。我可以在哪里以及如何查看/访问正在输入的所有数据。在本地机器上,我可以使用 db.collection.find() 并查询我的所有数据。
问题
一旦我将我的应用程序推送到 Cloud Foundry,我在本地存储的所有数据都不会与之链接。我能够将值存储到 PCF MongoDB 中。但我不知道如何查看其中的数据。有什么命令或者方法可以查看我输入PCF MongoDB的所有数据吗?
尝试
查看我的 VCAP_SERVICES 我能够看到我的数据库名称、用户名和密码。但它们看起来像是被加密的,它有字母数字和连字符都混合在一起。下面的示例 VCAP 的外观(副本值,相同格式)
"database": "9faf201a-39b1-4lse-49242f404g11"
"host": "10.100.100.333"
"password": "2jnkj4nk22kk5lk6kj4n4k6nkj6001"
"username": "401849301k-8g3f-5c3j-k28-583920308592f04"
我尝试在 CLI 中使用以下代码
mongo someurl.mongodomain.com:45475/database_name -u username -p password
所以对于数据库名称、用户名和密码,我只是复制并粘贴了看起来加密的用户名和密码
mongo myurl.com:1337/9faf201a-39b1-4lse-49242f404g11 -u 401849301k-8g3f-5c3j-k28-583920308592f04" -p 2jnkj4nk22kk5lk6kj4n4k6nkj6001
我连接失败。也许我必须输入正确的用户名和密码。在哪里可以设置用户名和密码?我正在使用弹簧靴,它是自动为我处理的。因此,我从未创建过用户名或密码。
【问题讨论】:
-
因为我无法发表评论。我想强调@DanielMikusa 提供的选项非常有效。 “使用 cf ssh 和 ssh 隧道。将 mongodb 实例绑定到应用程序,运行 cf env 以获取主机、端口和凭据(或制作服务密钥)。然后运行 cf ssh -N -L
: : app-name(您连接的应用程序并不重要,它只是我们正在通过隧道的应用程序)。现在将客户端连接到 localhost: 并使用您从 cf env 获得的凭据。”
标签: cloud-foundry