1

2つのmdfファイルと2つのldfファイルを含む.bakファイル(SQL Server 2008)があります。

そこからデータベースを復元しようとすると、4つすべてのファイルが作成されます。

私はこれまでこれを見たことがなく、古き良き1ファイルペアシステム(1 mdf / 1 ldf)にどうやって行くのか疑問に思っていましたか?

バックアップにある2つのファイルペアに関する洞察も役立ちます。

ps:私のセットアップにはNdfファイルがありません。どちらもMdfです。

4

2 に答える 2

2

データをセカンダリmdf(ndfではないですか?)から最初のmdfに移動する必要があるようです。これはすべて、復元が完了したことを前提としています。

m12つのファイルがとであるとしましょうm2

ndfDBCC SHRINKFILEを移動して空にするために使用します。

--move all data out of this file
DBCC SHRINKFILE ('m2', EMPTYFILE )

SQLServerをシングルユーザーモードで再起動する必要がある可能性があります。(ソース

--if trying to delete LDF file, do a Transaction log backup of your DB now

--remove this file from the 
ALTER DATABASE DB_NAME_HERE_NO_QUOTES REMOVE FILE m2
于 2010-12-22T19:47:37.600 に答える
1

データベースで複数のファイルを使用すると、データベースを複数のディスクドライブに分散させるのに役立ちます。

データベースの復元時にファイルの数を変更することはできませんが、ファイルが復元される場所を指定することはできます。RESTOREDATABASEコマンドのMOVEオプションを確認してください。

データベースの復元後、データベースファイルを削除できます。ファイルを空にするオプションを使用してファイルを縮小する必要があります。次に、ALTERDATABASEコマンドを使用してファイルをドロップできます。

于 2010-12-22T19:45:13.590 に答える