3

Visual Studioで従来のaspプロジェクトを実行しようとしていて、データベースを復元しようとしています。復元しようとしたときにファイル.bakが見つからないようです。それはCドライブでは見えませんでした。私はそれを見て、それが許可と関係があることを見てきました。私は、すべての人に.bakファイルのプロパティ>セキュリティの後にアクセス許可を有効にしようとしましたが、動作しませんでした。私もNT Service\MSSQLSERVERを試しました。以下をご覧ください。データベースを復元しようとしたときにbakファイルが表示されない

enter image description here

enter image description here

+1

ただ...あなたはOKボタンの上のドロップダウンから "すべてのファイル"オプションを選択しようとしましたか?デフォルトは.bak、.trnです。おそらくファイルの拡張子は.bakではありません。 – objectNotFound

+0

セキュリティ権限の変更はすべて、親ディレクトリで実行する必要があります。代わりに、* .bakファイルが含まれ、bakファイル自体は含まれていません。あなたの場合、bakファイルは 'C:\'ドライブのルートにありますので、bakファイルを含んでいる 'C:\'ドライブに対してパーミッションを変更する必要があります。 'C:\'ドライブルートのアクセス権を変更することは、通常はブートドライブであるため、良い方法ではありません。したがって、C:\ドライブにフォルダを作成し、bakファイルを新しいフォルダに移動し、新しいフォルダのセキュリティ権限を変更するのが、安全な方法です。 – RBT

答えて

3

また、ファイルが置かれているフォルダへのアクセス権を有効にする必要があります。 SSMSは、最初にフォルダをブラウズしてからファイルを読み込む必要があります。

あなたの場合、SQLサーバはNT Service\MSSQLSERVERアカウントを使用してフォルダにアクセスしようとします。そのため、そのアカウントに権限を与える必要があります(誰にでも)。

も助けにはならない上記の場合は、以下試してください。

  • オープン/クローズSSMS
  • 移動し、そのフォルダにはいくつかのフォルダと付与権限へのルートからファイル
  • 使用TSQLスクリプトを復元しますSSMSの代わりにデータベース
+0

私は 'Read&execute'、' List folder contents'、 'Read'権限を' \ Users'ユーザグループに与えてくれました。 'NT Service \ MSSQLServer'への権限を与えることも同様に役立ちました。 – RBT

+0

組み込みの 'Everyone'ユーザーに対して同じアクセス許可を与えることも同じように役立ちます。 – RBT

+0

名前付きSQLサーバーインスタンスの場合、サービスアカウントの形式はNT Service \ MSSQL $ です。 – RBT

関連する問題