- - PR -
MSSQLのバックアップに関して
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2005-10-05 12:43
環境
MSSQLサーバ:A バックアップサーバ:B 以上の環境でBがAにosqlを使用し接続・\\B\c:\mssqlbak.dmpという名前の バックアップファイルを作成するスクリプトを作成したのですがなぜか \\A\c:\mssqlbak.dmpにも同様のファイルが作られます。 バックアップサーバとMSSQLサーバのフォルダ構成が同じで なおかつ MSSQLサーバ側にバックアップファイルを作らないと 他のサーバからバックアップを実行できないということなんでしょうか? | ||||
|
投稿日時: 2005-10-05 13:25
すいません。
大きな、勘違いしておりました。 もう一度考え直します。 | ||||
|
投稿日時: 2005-10-06 13:49
もう一度まとめなおした上で
投稿いたします。 バックアップデータ保管 + バックアップ実行サーバ :サーバA MSSQL :サーバB 以上の環境があって サーバAの共有フォルダ【bkfile】に バックアップファイルをためていこうと思っております。 そこでサーバAから以下のコマンドを実行したところ、 osql -S サーバB -U sa -P sa -q "backup database master to disk = '\\サーバA\bkfile'" バックアップデバイス '\\サーバA\bkfile'を開けません。 デバイスエラーまたはデバイスがオフラインです。 といったエラーが表示され、バックアップできませんでした。 ぐぐったところ、SQLServerをサービスから起動するときの起動アカウントをLocalSystem→Administratorから 変更するとバックアップできるといった事が書かれていたため挑戦しましたが、それもだめでした。。。 どなたか対処方法をご存知の方 教えていただけないでしょうか。 | ||||
|
投稿日時: 2005-10-06 22:41
お疲れ様です。 SQL Server のサービスアカウントをチェックしてください。 LocalSystem アカウントでサービスが起動していれば, ■ Local の管理者権限で動いていますので ネットワーク上のシェアフォルダにアクセスできません。 ネットワーク上の資源にアクセス可能なサービスアカウントをあてがう必要があります。 ---------- TimberLandChapel http://blogs.timberlandchapel.com/blogs/timberlandchapel/ | ||||
|
投稿日時: 2005-10-06 22:49
こんばんわ。アグリッパと申します。
とありますが、ファイル名が抜けているように思われますが、いかがでしょうか。 勘違いしていたらごめんなさい。 | ||||
|
投稿日時: 2005-10-06 23:19
>アグリッパさん
ご指摘ありがとうございます。確かにファイル名が抜けていました。 しかし、ファイル名を追記した上で実行しても同じ結果でした。。。 >TLCさん アドバイスありがとうございます。 TLCさんのおっしゃってることは【スタート】→【設定】→【管理ツール】→【サービス】のMSSQL・・・のサービスの ログオンアカウントをLocalSystem以外にする ということでしょうか? もしそうでしたら、それはやってみたのですが、同じ結果でした。 (バックアップファイルの保存フォルダも書き込み権限をEveryone OKにしてあります。) | ||||
|
投稿日時: 2005-10-07 00:17
お疲れ様です。 サービスアカウントの権限がサービス再起動も含めてクリアになっているとすれば, ・論理デバイスの指定ができるか確認する ・クエリアナライザからの実行を確認する などとして原因を調べる方向でしょうか。 参考:バックアップ デバイス http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/adminsql/ad_bkprst_6hmb.asp ---------- TimberLandChapel http://blogs.timberlandchapel.com/blogs/timberlandchapel/ | ||||
|
投稿日時: 2005-10-07 03:34
アグリッパさんが書かれているようにファイル名を省略したり、
UNC パス(共有フォルダ名)が間違っている場合にこのエラーが発生します。 また、OS レベルでの認証エラーが発生した場合もこのエラーが発生します。 >起動アカウントをLocalSystem→Administratorから変更すると > サービスアカウントをローカルマシンの Administrator に変更してますでしょうか? サーバ A と B が同じドメインであれば、サービスアカウントにドメインのユーザー を指定すればよいのですが、ドメイン環境ではなく、ワークグループ環境の場合は、 A(SQL Server)上でサービスアカウントに指定したアカウントと、 ”同じ名前/同じパスワード” のアカウントがサーバ B 上にも必要になります。 これで OS レベルの認証が成功するようになります。 ですので、サービスアカウントを Administrator にしている場合は、 サーバ A と B に同じパスワードを設定した Administartor が必要になります。 あと、これはないと思うのですが、もし サーバ B が XP の場合は、Force Guest も 考慮する必要があります。これについては以下が参考になると思います。 http://www.sqlpassj.org/bbs/ml_disp.aspx?forum_id=1¤t_page=1&disp_mode=0&detail_mode=1&message_id=19709 | ||||
