
私は、3 つの異なるサーバー (MySQL データベース) で使用される MySQL データベース スキーマを、各サーバーのスキーマのコピー 20 個 (形式はすべて同一ですが、含まれるデータは異なります) に分割するプロジェクトに取り組んでいます。つまり、同じスキーマのコピー 60 個が 3 台のマシンに分散していることになります。
これらのマシンは、結果をホスト マシンに報告します。私が直面している問題は、すべてが展開されている間にスキーマの変更を管理することです。列を追加または削除するたびに、クエリを 20 回複製し、3 台のマシンにコピーする必要があります。これらすべての同一の (スキーマは同一であり、データの内容は同一ではない) データベース インスタンスを管理するために使用できるソフトウェアはありますか? データベースのすべてのインスタンスを調べて、それらの間のスキーマの変更 (および個々のインスタンスのテーブル サイズ) を通知するソフトウェアを見つけたいです。
単一ソースの GUI またはコマンド ライン プログラムからすべてを管理できるソフトウェアはありますか?
答え1
これに役立つオプションがいくつかあります。
- アンシブル
- ジェンキンス
- ランデッキ
Jenkins を Github、Bitbucket、または Gitlab の Webhook と統合できるため、新しいコミットが行われるたびに DevOps パイプラインが起動されます。
Rails などのフレームワークを使用している場合は、これらのソフトウェアを使用して、そこから移行やシーダーを実行することもできます。これは、データベース スキーマのバージョンを管理するオプションでもあります。
じゃねーよ!