0

Cloudbees を使用してアプリケーションをデータベースに接続できません。

私は自分の構成ファイルに持っています:

# Database configuration
# ~~~~~ 
db.default.driver=${MYSQL_DRIVER}
db.default.url=${MYSQL_URL_DB}
db.default.user=${MYSQL_USERNAME_DB}
db.default.password=${MYSQL_PASSWORD_DB}

Cloudbees の構成では、次のものがあります。

$ bees config:list -a me/my-app
Application Parameters:
  proxyBuffering=false
  MYSQL_URL_DB=jdbc:cloudbees://my-app
  MYSQL_USERNAME_DB=my-app
  MYSQL_PASSWORD_DB=dadadadada
  MYSQL_DRIVER=com.mysql.jdbc.Driver
Runtime Parameters:
  java_version=1.7

これを読むと、実際にドライバーが宣言されているようです。依存関係は Build.scala にあります。

  val appDependencies = Seq(
    javaCore, 
    javaJdbc, 
    javaEbean,
    "mysql" % "mysql-connector-java" % "5.1.22"
  )

しかし、最初は次のようになります。

Caused by: 
    java.sql.SQLException: No suitable driver found for 
    mysql://ec2-23-21-211-172.compute-1.amazonaws.com:3306/my-app

ドキュメントを読み逃したような気がしますが、何が見つかりません...

ありがとう、

編集: Githubで私のテスト アプリケーションを見つけることができます。この報奨金は、Cloudbees への展開を管理する (およびその方法を説明する) 人のためのものです。Cloudbees の設定は Github ではコミットされていません。

4

3 に答える 3

1

mysql 5.1.18 コネクタで試すことをお勧めします。CloudBees にアプリケーションがあり、そのコネクタで正常に動作します。また、問題がどこにあるかをより簡単に確認するために、ローカル データベースを試してみてください。

これは私のBuild.scala です

val appDependencies = Seq(
    // Add your project dependencies here,
    javaCore,
    javaJdbc,
    javaEbean,
    "mysql" % "mysql-connector-java" % "5.1.18"
  )

  val main = play.Project(appName, appVersion, appDependencies)
    .settings(cloudBeesSettings :_*)
    .settings(CloudBees.applicationId := Some("project_test"))

このコネクタで問題が解決しない場合は、application.confで次の構成を試してください(db.default.url のデータベースのユーザー名とパスワードに特に注意してください)。

db.default.driver=com.mysql.jdbc.Driver
db.default.url="mysql://dbusername:dbpassword@localhost/DATABASE_NAME"
db.default.user=dbusername
db.default.password=dbpassword

私にとってはうまくいきます。

お役に立てれば。

于 2013-03-20T04:33:39.163 に答える
0

ここでの問題は、Cloudbees アプリケーションのパラメーター (で設定したもの) が、ファイルbees config:setの左側で設定したパラメーターをオーバーライドすることです。conf/application.conf

したがって、この場合MYSQL_URL_DB、Cloudbees アプリケーション パラメータとして設定する必要はありませんが、直接db.default.url

ちょうど試して:

bees config:set -a seo-machine -P db.default.url=jdbc:mysql://ec2-23-21-211-172.compute-1.amazonaws.com:3306/my-app

アプリを再起動します。

bees app:restart

また、JDBC URL のプレフィックスを忘れないでくださいjdbc:- onlymysql://ec2-23-21-211-172.compute-1.amazonaws.com:3306/my-appは URL として十分ではありません

于 2013-04-27T16:19:54.863 に答える
-1

ねえ、私は今のようにこれを修正しました。:)

mysql_urlを次のように変更する必要があります

MYSQL_URL_DB = jdbc:mysql:// host:3306 / my-app

デフォルトのURLはcloudbeesドライバーを指しており、mysqlドライバーを使用しているため、mysqlurlに変更する必要があります。

于 2013-03-18T16:59:17.207 に答える