web-dev-qa-db-ja.com

SQLServer固有のファイルグループ

Primary、FG_ExtendedTables、およびFG_ReportingTablesの3つのファイルグループを持つデータベースがあります。

別のデータベース(たとえば、本番データベース)を作成し、特定のファイルグループとそのデータを含むテーブルのみを復元する必要があります。

私はstackoverflowでこの答えを見ました https://stackoverflow.com/questions/25841822/backup-and-restore-sql-server-database-filegroup しかし、彼は.bakファイルを復元しています、私はしました彼が提供した例のようですが、bakファイルにはすべてのテーブルがあり、私はそれを望んでいません。

それも可能ですか?いいえの場合、ファイルグループの目的は何ですか?

コードが提供されれば幸いです、ありがとう。

1

すべてのオブジェクトのデータベーススキーマはPRIMARYファイルグループに保存されますが、ユーザーデータはオプションで別のファイルグループに保存される場合があります。個々のファイルグループの断片は、新しいデータベースを作成するために使用されることを意図したものではなく、使用頻度の低いデータの前に重要なデータを復元することを目的としています。この手法により、復元全体が完了する前に、復元シーケンス中にデータベースを部分的に使用できるようになります。

いいえの場合、ファイルグループの目的は何ですか?

断片的な復元に加えて、ユーザー定義のファイルグループを使用すると、個々のテーブル、インデックス、およびパーティションの配置を制御できます。これにより、分離されたストレージによってパフォーマンスが向上するシナリオ(ランダムアクセスとシーケンシャルアクセスを分離するなど)や階層型ストレージ(低速で安価なメディアにデータをアーカイブするなど)など、基盤となるファイルをさまざまな基盤となるストレージデバイスに配置できます。

2
Dan Guzman