コストを削減するために、異なる db インスタンスではなく、1 つの大規模データベース内で異なるスキーマを使用することは良い考えですか?
スキーマはまったく同じで、名前が異なるだけです。たとえば、テスト環境用、ベータ用、本番用などに 1 つのデータベースがあります。これらすべてのデータベースを、今後問題なく異なるスキーマ名を持つ 1 つの大きなものに折りたたむことはできますか?
このアプローチにはいくつかの落とし穴がありますか?
コストを削減するために、異なる db インスタンスではなく、1 つの大規模データベース内で異なるスキーマを使用することは良い考えですか?
スキーマはまったく同じで、名前が異なるだけです。たとえば、テスト環境用、ベータ用、本番用などに 1 つのデータベースがあります。これらすべてのデータベースを、今後問題なく異なるスキーマ名を持つ 1 つの大きなものに折りたたむことはできますか?
このアプローチにはいくつかの落とし穴がありますか?
ベスト プラクティスの推奨事項は、開発/テストを本番環境から分離することです。不正なクエリによってサーバー全体が機能しなくなるようなテスト ケースを開発者やテスターに実行させたくありません。
ただし、dev および test/qa 環境では、同じサーバーを別々のインスタンス (同じ物理ハードウェアにインストールされた SQL サーバー) を使用できます。
無料版である開発環境およびテスト/QA 環境向けの SQL Server Express を使用することもできます。SQL Server Express 2012 では、10 GB のデータベース サイズが許容されるようになりました。