Railsアプリで生のSQLを実行する必要があります。クエリがトランザクション内で実行された場合、クエリは暗黙のコミットを引き起こします。InnoDBでMySQLを使用しており、クエリにはcreatetableなどが含まれます。
を使用してクエリを実行するActiveRecord::Base.connection.execute
と、問題となる暗黙のコミットがトリガーされます。
クエリを実行するために別の接続が必要なようです。ActiveRecordはこれを提供できますか?複数のデータベースに接続することについての議論を見てきましたが、同じデータベースへの複数の接続については説明していません。
より良い方法があれば、ソリューションにActiveRecordを含める必要はありません。
RailsとActiveRecordのバージョンは3.2.3です。