2012-04-24 22 views
5

ここにシナリオがあります:SQL Server MDFファイル - バックアップ方法

私たちは3つのデータベースを持つ企業Webサイトを持っています。 SQL Server 2005を実行しています.3つのデータベースはMDFファイルにリンクされています。誰かが、読み取り専用エラーの原因となったファイルに何らかのロックをかけたMDFファイルを直接コピー/貼り付けしようとしました。私たちは取り外して/再取り付けすることでこれを修正しました。

これをもう一度防ぐために、これらのデータベースのコピーを入手してQAデータベースに降格することを検討しています。

法人のサイトを削除せずにコピーを作成するにはどうすればよいですか?私はGoogleを検索しようとしたとまともな方法ではなかった。データベースはかなり小さく、私が考えることができる最悪のケースはSQL Serverサービスをシャットダウンし、MDFをコピーしてからサービスを再起動することです。ほとんどの停止時間で10秒と仮定しています。

こと、

+0

は申し訳ありませんが、私はそれがリモートでホストされているので、データベースが同じネットワーク上にないことを、追加しているはずですので、我々は単にデータを移動することはできません。私たちはQAデータベースに接続することはできません。 – dave2118

+0

バックアップをスケジュールできませんか?その後、バックアップファイルを移動します。 – Ste

+0

DBにアクセスしようとするユーザーに影響を与えないバックアップ(DataBase> Tasks> Backup)を強制的に強制するだけで正しいのですか? – dave2118

答えて

2

むしろコピーしようとMDFファイルをロックするよりも、単にファイルシステムへのデータベースのバックアップを取るし、それらをオフにコピーします。

あなたは私たちがそこには、「すべての」ユーザーに影響を与えるため、当然のことながら、我々はデータベースで物事をやっていることはありませんと言うことはできません

...ユーザーはバックアップ中に影響されるかどうかを尋ねます。しかし、ライブデータベースをバックアップすることが一般的です。一般に、夜間または低使用期間中にバックアップをスケジュールして、中断が最小限に抑えられます。

提供されるいくつかの良い情報を持っているこの質問をチェックアウト: https://serverfault.com/questions/100490/what-happens-during-a-live-sql-server-backup

2

@daveが、私はあなたが正しいと疑う[直接あなたは、少なくともDBをオフラインにしてくださいまたはDBをロックすることができ、MDFファイルをコピーしていない、誰もがこれを読んで注意してください]データベースへのユーザーアクセスを中断することなく、バックアップは機能します。バッチファイルで次のコマンドを実行してデータベースをバックアップし、実行中にアクセスをブロックしません。私はSQL Serverの専門家ではないことに注意してください。これは私のために働くものです。

sqlcmdのは "myhostnameと\ SQLEXPRESS" -Q「バックアップデータベースMyDatabaseName TO DISK = N'Cを-S:NOFORMAT WITH backup.bakを「\する\パス\、NOINIT、NAME = N'MyDatabaseNameフルデータベースバックアップ」、SKIP、NOREWIND、NOUNLOAD、STATS = 10"

+0

あなたのコメントのためにDavidに感謝します。私はあなたに似ています。私はSQL Serverを開発者として数年間働いていましたが、管理面ではあまりありませんでした。この新しい仕事はOracleベースであり、文字通り4年間は触れられていないSQL Serverを実行している企業サイトを持っています。私はSQL Serverの専門家に昇進し、これを理解しなければなりません。私は、推測するよりもここで尋ねるほうがよいと考えました。 – dave2118

+0

運が良かった、Dave! –