2016-11-23 17 views
2

Spring Bootでデータベースをプログラムで作成し、アクティブなデータソースとして配置する方法を探しています。プログラムでSpringに新しいDBを作成する

このようなことも可能ですか?私はこの動的なDBの変更をすべて見ていますが、私が必要とするものではありません。ドキュメンテーションではマイグレーション、DB初期化などについては何も知ることができません。

PostgreSQL 9.4 DB。

CREATE DATABASE name; 

かの場合には、データベースは、ユーザーに所有している必要があります:

CREATE DATABASE name OWNER username TABLESPACE tablespacename; 

が次に追加するAbstractRoutingDataSourceを使用

+0

プログラムによって、アプリケーションの起動時に作成することを意味しますか? –

答えて

1

データベースを作成するためのSQL文を実行することができます新しいデータソースを変更してそれに変更します。

+1

私はこれを試してみる必要があります、私は 'CREATE DATABASE'でマイグレーションをすることができませんでした:)。 –

+1

私はそれをこのようにすることができました。私たちはプロジェクトでFlywayを使用していますので、Flywayコールバックでステートメントを実行し、そこからDataSourceを切り替えても構いません( 'AbstractRoutingDataSource'は必要ありません)。アイデアありがとう! –

1

春ブーツは、作成したデータベースの初期化に使用されているクラスpath.Theseファイル内のSQLファイルを保持することができます。 ここから使用できますSpring Boot Doc

関連する問題