0

JSP、Spring Security、MySql を使用してアプリケーションを開発しました。Cloudfoundry にデプロイしました。しかし、warファイルだけでmysqlサービスをバインドしました。しかし、新しいユーザーとそれをすべて自分のデータベースに持つ 2 つのテーブルで構成される MySQL データベースも構成する必要があります。localhost でアプリケーションをテストしている間に、MySQL コマンド ウィンドウで手動スクリプトを実行するデータベースを準備しました。質問: CloudFoundry で同じ構成を行うにはどうすればよいですか? 同様に、すべてのコマンドとスクリプトを手動で実行したり、何らかの方法でデータベースをエクスポートしたりできますか? はいの場合、これを行う方法。そして、localhost の代わりに今ここに何を書くべきでしょうか?

 <property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/security_filter" />

ありがとうございました

4

2 に答える 2

1

Caldecott (vmc トンネル) は、cloudoundry データベースにアクセスするための正しい方法です (私にとっては動作し、Ruby 1.8 を使用しています): http://docs.cloudfoundry.com/tools/vmc/caldecott.html

それがうまくいかない場合は、手動で何かを行う必要があります (はるかに困難です):

  • mysql データベースに接続するサンプル jsp/サーブレット アプリケーションを作成します (ユーザーからの入力として接続文字列、ユーザー名、およびパスワードを取得します)。次に、データベースに対して sql ステートメントを実行するだけです ( sql ステートメントはユーザーからも入力されます)。
  • このアプリケーションを戦争にバンドルする
  • ここで、データベース接続文字列/ユーザー名とパスワードを取得する必要があります。それらは環境変数VCAP_SERVICESから取得できます。起動リスナーにログを記録するだけです(例:ServletContextListener)
  • war を展開し、サーバーからログを取得します (vmc logs ApplicationName)。接続文字列、ユーザー名、パスワードを取得する
  • アプリケーションにログオンし、データベース アプリケーションを使用して、前の手順で収集したデータベース情報を使用してデータベースにアクセスします。

これは非常に危険なアプローチであることに注意してください。このデータベース アプリケーションを確実に保護するか、最初のインポート後に war から削除してアプリケーションを再デプロイしてください。

最後に、そのようなデータベース コンソール アプリケーションが既に存在するかどうかを確認して、独自に作成する必要がないようにすることができます (たとえば、grails には、このhttp://grails.org/plugin/dbconsole用の優れたアプリケーションがあります。 jsp/サーブレット)

ruby の問題がうまくいかない場合に役立つことを願っています

于 2012-05-08T19:15:43.393 に答える
0

データベースの mysqldump を作成する必要があります。mysqldump ファイルを取得したら、caldecott を使用して、MySQL サービスへの vmc トンネルを実行します。Cloud Foundry で MySQL サービスとの接続を確立したら、mysql コマンドを使用して mysqldump ファイルをサービスに手動でインポートする必要があります。

vmc トンネルの使用方法については、ドキュメント サイトhttp://docs.cloudfoundry.com/tools/vmc/caldecott.htmlを参照してください。

于 2012-05-09T19:27:17.813 に答える