あなたにとって理想的な解決策は、モジュールをスキーマに分割することです。これにより、モジュールごとの分離の効果的な単位が得られ、すべてを単一のスキーマ(特にパブリック)にダンプするのではなく、モジュラーアプリケーション(完全に分離されて自己管理するモジュール)にも自然に適合します。例
application_database
├── public
├── module_1
│ ├── schema_version
│ ├── m1_t1
│ └── m1_t2
├── module_2
│ ├── schema_version
│ ├── m2_t1
│ └── m2_t2
...
2番目のオプションは、引き続きパブリックスキーマを使用してすべてのテーブルをホストすることですが、schema_version
ごとに個別のスキーマを使用します。 。これはリファクタリングの労力は少なくなりますが、確かに上記よりもエレガントなデザインではありません。例
application_database
├── public
│ ├── m1_t1
│ ├── m1_t2
│ ├── m2_t1
│ └── m2_t2
├── module_1
│ └── schema_version
│
├── module_2
│ └── schema_version
...