石鹸箱 IV

VBA研究所に集まる方々の憩いの場です。みなさん自由にお使いください。
ここでは VBA の質問は厳禁。

5780 / 7636 ←次へ | 前へ→

【1886】SQL Server の簡易バックアップ
 谷 誠之 E-MAIL  - 06/6/5(月) 15:23 -

引用なし
パスワード
   谷です。
ブログのように使うといいながら、Jaka さんと ichinose さんに先を越されてしまいました。でも、がんばるぞ。

しかし、自分でやったんですけど、ブログ的な使い方をするのに URL の書き込み禁止は、確かに辛いですなあ。(ごめんね、ichinoseさん)

さて今日はブログというよりも、備忘録。

勤務先のサーバー(Windows 2000 Server)に、GroupSpirit という名前の、無償のグループウエアを導入しました。
サポートがないかわりに、無償で使えるものです。確かイユーザ数制限もあったんじゃないかな。もっと本格的に使いたい場合やカスタマイズしたい場合は有償版を使うことになりますが、私の勤務先は無償版で十分です。

データベースは、MSから無償で提供されている MSDE(Microsoft SQL Server Desktop Engine)を使います。これは SQL Server の機能限定版という位置づけです。

いちおうすべてのセットアップが終わってから、「やっぱり、データベースは毎日バックアップをとりたいなぁ・・・無償で」と思い立ちました。
Windows 2000 には、XCOPY というコマンドでバックアップをとることができます。しかし、MSDE のサービスが動作していては、ファイルがロックされるのでコピーをとることができません。そこで、次のようなバッチファイルを作成しました。

 @echo off
 net stop mssqlserver
 xcopy c:\mssql\data\*.* \\server\share\groupspiritbackup\
 net start mssqlserver
 date /t >> C:\backupsql.log

net start/top コマンドは、サービスを動かしたりとめたりするコマンドです。
これでサービスを止めた後、c:\mssql\data\ 以下のすべてのファイルを別の共有フォルダにコピーし、ふたたびサービスを起動します。
最後の date コマンドは、バッチファイルがちゃんと動作したか確認するためのログ出しです。

ところで、Windows 2000 には at というコマンドがあります。コマンドを「あと」で実行するから at ・・・ ではなく、コマンドプロンプトで

at 4:00 /every:s,m,t,w,th,f,sa "C:\WINNT\SYSTEM32\CMD.EXE /C C:\BACKUPSQL.BAT"

と入力すると、毎日(/every:s,m,t,w,th,f,sa は、毎日/月/火/水/木/金/土)午前4時にこのバッチファイル(C:\BACKUPSQL.BAT)を実行しなさい、という意味になります。

標準機能でここまでできる、ということで・・・
1,304 hits

【1886】SQL Server の簡易バックアップ 谷 誠之 06/6/5(月) 15:23
【1887】Re:SQL Server の簡易バックアップ 小僧 06/6/5(月) 19:21
【1888】Re:SQL Server の簡易バックアップ 谷 誠之 06/6/5(月) 20:41
【1889】Re:SQL Server の簡易バックアップ 小僧 06/6/6(火) 9:22

5780 / 7636 ←次へ | 前へ→
ページ:  ┃  記事番号:
219927
(SS)C-BOARD v3.8 is Free