最初の状況では、次のようなことを試したようです (または、ダイアログを通過するときに GUI が準備するものは何でも):
CREATE DATABASE YAFnet ON (FILENAME = N'C:\sql_data\YAFnet.mdf') FOR ATTACH;
プレ>ただし、この方法には両方の
mdf
が必要です ファイルとldf
ファイル。そうしないと、次のようなエラー メッセージが表示されます:
mdf
しか持っていない場合でも続行する方法があります。 ファイル。mdf
があると仮定すると ファイルが SQL Server から適切に切り離されていれば、mdf
を添付できるはずです。 次の構文を使用して、ログ ファイルのないファイルを作成します:CREATE DATABASE YAFnet ON (FILENAME = N'C:\sql_data\YAFnet.mdf') FOR ATTACH_REBUILD_LOG;
プレ>ただし、あなたの場合、ファイルが SQL Server から適切に切り離されていないようです:
エラーメッセージに記載されているものを含め、いくつかの考えられる説明があります。おそらく、無効な SAN シャドウから取得されたか、読み取り専用で切断されたか、SQL Server または基盤となるシステムがクラッシュした後に回復されたか、コピー/ダウンロード中に破損したか、または他に何があるかはわかりません.
Yaf のサポートまたはサービス プロバイダのサポートに戻って、適切なバックアップがあるかどうかを確認する必要があります。
mdf
の別のコピーが利用可能であるか、それがない場合は ファイル。また、Yaf が何であるかを実際に知っている人や、あなたが話している Yaf を確認する方法を持っている人は誰もいないことに注意してください。そうでなければ、この特定の
mdf
から、運が悪いようです ファイルが無効であるため、あまり役に立ちません。これがまさに、デタッチ/アタッチおよび/または O/S レベルのファイル コピー アプローチが、SQL Server のバックアップ (または移行) のあまり有用な方法ではない理由です。適切なバックアップ/回復計画が必要です。つまり、データ損失に対する許容度に適した適切な完全/差分/ログ バックアップを作成する必要があります。そして、データベースをデタッチすることは、ほとんどの場合劣った考えです - 何かが
mdf
に起こったとき デタッチ中またはデタッチ後にファイルを削除すると、ゼロ になります。 データベースのコピー