JPAで複数データベース(PostgreSQL)に接続する方法JPAで複数データベースに接続するけど、トランザクション管理は別々にしたいです。MyDB1を更新して、そのあとにMyDB2更新時に失敗した場合に、MyDB1をロールバックせずにコミットしておきたい。今回は2つのデータベースともPostgreSQL9.6を使用しています。複数データベースに接続する1つ目のDB接続情報をprimary、もう一つのDB接続情報をsecondaryとします。application.ymlには以下のように記述します。接続情報に対するクラスを定義します。接続情報を一つのクラスとして定義する為、2つのクラスを作成しておきます。PrimaryConfig.javaSecondaryConfig.javaこれで2つのデータベースに接続することが確認できます。トランザクション管理は別になります。query」とエラーが出ますが、リポジトリレベルで@Transactionalとすると別トランザクション管理ができます。2つのデータベースでトランザクション管理する2相コミット(2フェーズコミット)データベース接続は確認できましたが、複数データベースでトランザクション管理ができるかというと、@Transactionalでは実現できず、以下ライブラリを使わないとだめなようです。Atomikos(アトミコス)bitronix(バイトロニクス)bitronixは情報量が少ないように思いますが、現在も開発されています。Atomikosも現在も開発されています。ライブラリは他にもあるようです。boot公式ではこの2つをサポートしているとのことです。https://spring.pleiades.io/spring-boot/docs/current/reference/html/spring-boot-features.htmlPostgreSQL9.6で2フェーズコミットをAtomikosかbitronixを使って試してみたいと思います。高橋KHI入社して退社。今はCONFRAGEで正社員です。JPAのエンティティからテーブル作成するのを実装してみました。PostgreSQLのコマンド纏めです。...記事を読むトランザクションの準備は無効にされているためできません。トランザクションの準備は無効にされているためできません。久しぶりにpostgresSQLを触っています。コメントをキャンセルメールアドレスが公開されることはありません。*サイト上に表示された文字を入力してください。Boot+JPA+bitronixで2相コミットを実装する方法トランザクションの準備は無効にされているためできません。