簡體   English   中英

如何通過 MySQL Workbench 或 CLI 或 MySQLWeb 數據庫管理應用程序連接到 Pivotal Cloud Foundry (PCF) 上的 MySQL 服務?

[英]How do I connect to my MySQL service on Pivotal Cloud Foundry (PCF) via MySQL Workbench or CLI or MySQLWeb Database Management App?

我有一個基於Spring BootREST應用程序,它部署在Pivotal Cloud Foundry (PCF)並且運行良好。 但是這個 REST 應用程序直到現在還沒有任何數據庫連接。 因此,我決定從市場上在PCF上安裝MySQL服務,並最終將其成功綁定到我的應用程序。

但是,問題是我無法通過CLI或任何其他GUI連接到這個新創建的MySQL實例。

到目前為止,我已經按照以下鏈接進行操作,但沒有運氣。

我為實現這一目標而執行的步驟是:

  1. 成功為MySQL創建服務實例
  2. MySQL的服務實例綁定到應用程序成功(見上面的cf service s命令結果)

    # cf 服務

    名稱服務計划綁定應用程序上次操作

    my-mysql-db cleardb spark agrisell-rest-app create succeeded
  3. 成功推送我的應用程序並且可以成功命中REST API

    https://agrisell-rest-app.cfapps.io/hello

  4. 啟用ssh上使用主機應用程序cf enable-ssh agrisell-rest-app成功

  5. 使用cf create-service-key my-mysql-db my-mysql-db-service-key創建服務密鑰(創建后獲取服務密鑰的命令如下所示)

    # cf service-keys my-mysql-db

    命名 my-mysql-db-service-key

  6. 使用以下命令檢索服務密鑰和數據庫憑據

cf service-key my-mysql-db my-mysql-db-service-key

{
 "hostname": "us-cdbr-iron-east-01.cleardb.net",
 "jdbcUrl": "jdbc:mysql://us-cdbr-iron-east-01.cleardb.net/ad_b509d7f388732d5?user=hello123\u0026password=world456",
 "name": "ad_b509d7f388732d5",
 "password": "world456",
 "port": "3306",
 "uri": "mysql://b311794a3c31eb:ca7ad71f@us-cdbr-iron-east-01.cleardb.net:3306/ad_b509d7f388732d5?reconnect=true",
 "username": "hello123"
}
  1. SSH隧道配置成功

    cf ssh -L 63306:us-cdbr-iron-east-01.cleardb.net:3306 agrisell-rest-app

  2. 通過CLI訪問服務實例

    vcap@33eb3942-10bd-4068-650f-64fc:~$ mysql -u hello123 -h 0 -p -D ad_b509d7f388732d5 -P 63306 bash: mysql: 命令未找到

基於上述錯誤,我覺得好像沒有正確安裝 mysql 插件,但我已經安裝了它們。

# cf plugins
Listing installed plugins...

plugin   version   command name   command help
mysql    2.0.0     mysql          Connect to a MySQL database service
mysql    2.0.0     mysqldump      Dump a MySQL database

Use 'cf repo-plugins' to list plugins in registered repos available to install.

第二種方法:

我嘗試的第二種方法是通過MySQL Workbench連接到PCF MySQL DB ,該MySQL WorkbenchWindows上的MySQL服務器安裝捆綁在一起。 我用它連接到我的本地MySQL DB 我修改了設置以將其指向主機、數據庫並更改憑據並嘗試連接,但也無法正常工作。

第三種方法

我嘗試的第三種方法是從PCF文檔之一安裝Pivotal MySQL Web Database Management工具

https://docs.pivotal.io/p-mysql/2-2/use.html#mysqlweb

我將它安裝在我的Windows 10機器上(沒有將它部署到PCF )並嘗試登錄,但也失敗了。

第二種方法嘗試過但失敗了

根據您的回復 Arun,我遵循了此處自述文件中提到的所有說明 ( https://github.com/pivotal-cf/PivotalMySQLWeb ),但它不允許我使用 DB URL 和憑據登錄到應用程序。 使用憑據admin/cfmysqlweb的第一次登錄有效,但需要 DB 憑據和密碼的登錄頁面將我發送回第一個登錄屏幕,並顯示“Bad Credentials”消息。 截圖如下。

在 PCF 上部署 PivotalMysqlWeb 並將其綁定到數據庫實例

在此處輸入圖片說明

使用 admin/cfmysqlweb 憑據成功進行基本身份驗證后現在顯示的登錄頁面

在此處輸入圖片說明

上面輸入的數據庫憑據並在提交時我被帶回到第一個登錄頁面(回到第一個)

在此處輸入圖片說明

您無法使用 PC/筆記本電腦中的工具連接任何Marketplace service (就像您使用 MySQL 應用程序所做的那樣)

原因是 PCF 中的任何 Marketplace 服務都可以在任何地方運行,您只需提供它的一個instance

出於安全目的,您的 Marketplace 服務(您訂購的……您支付的)僅暴露給該特定的PCF Foundation ……

如果您仍然想連接到 MySQL 並查看您的數據庫,我建議您使用PivotalMySQLWeb 工具 您必須在同一個PCF-space上傳此應用程序並將其綁定到您將在該space創建的MySQL DB Instance 您可以在他們的README file查看很多說明

我安裝了 MySQL Workbench 並創建了一個新連接。 然后從PCF上的服務詳細信息中填寫詳細信息(您發布的那些)

{
 "hostname": "us-cdbr-iron-east-01.cleardb.net",
 "jdbcUrl": "jdbc:mysql://us-cdbr-iron-east-01.cleardb.net/ad_b509d7f388732d5?user=hello123\u0026password=world456",
 "name": "ad_b509d7f388732d5",
 "password": "world456",
 "port": "3306",
 "uri": "mysql://b311794a3c31eb:ca7ad71f@us-cdbr-iron-east-01.cleardb.net:3306/ad_b509d7f388732d5?reconnect=true",
 "username": "hello123"
}

所以在你的情況下:

主機:us-cdbr-iron-east-01.cleardb.net

用戶名:hello123

密碼:world456

默認架構:ad_b509d7f388732d5 端口:3306

有趣的是,默認模式需要匹配“name”屬性。 我輸入了自定義名稱,但無法連接。 不太確定為什么,但你能做什么。

如果有人想從 IntelliJ 連接aws-rds-mysql (從 Pivotal Cloud Foundry 實例化),請執行以下步驟:

創建 ssh 隧道后,您可以從本地主機的 63306 端口訪問 AWS-RDS 數據庫,按照說明使用 DB Navigator 插件(intelliJ)連接數據庫

  • 在 intelliJ(社區版)中安裝 DB Navigator 插件,如果你還沒有安裝 -> https://plugins.jetbrains.com/plugin/1800-database-navigator
  • 在 IntelliJ 中連接到 AWS RDS -> 注意連接是通過端口 63306 上的 localhost 進行的
    • 轉到 DB Navigator 插件並單擊新連接下的自定義。
    • 輸入 URL 為:jdbc:mysql://:@localhost:63306/<database_name>

步驟也可在GitHub 上找到

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM