12

現在使用中であるというエラーが表示されたときに、DBをデタッチしようとしました。したがって、DBをオフラインにしようとしましたが、失敗しました。

'an exception occured while executing a transact SQL statement or batch 

-> ALTER DATABASE failed because a lock could not be placed on database 'myDB'. Try again later.
    ALTER DATABASE statement failed. (Microsoft SQL Server, Error: 5061)'

DBにアクセスしようとすると、アクセスできないと表示されます。DBに再びアクセスできるようにするにはどうすればよいですか?

私の目的は、DBを切り離し、そのセカンダリデータベースファイルを新しいドライブに再配置して、再接続することでした(単にスペースの問題のため)。

4

2 に答える 2

14

次の手順を試してください。

  1. services.mscコンソールを使用してSQLサーバーサービスを再起動します。
  2. 次に、SQL ServerManagementStudioを使用してサーバーに接続します。
  3. クエリアナライザで次のコマンドを実行します

      ALTER DATABASE `YOURDATABASE_NAME`  
      SET SINGLE_USER WITH ROLLBACK IMMEDIATE 
    
  4. 次に、データベース名を右クリックし、[タスク]をポイントして、[デタッチ]をクリックします。[データベースのデタッチ]ダイアログボックスが表示されます

または5.コマンドを実行して、2次データベースを再配置します。

  1. データベースモードを再度マルチユーザーに設定します

    ALTER DATABASE `YOURDATABASE_NAME` SET MULTI_USER 
    

お役に立てれば。

于 2012-07-09T06:33:25.850 に答える
12

Furqanの回答のステップ1の代わりに、SQL Serverインスタンスを再起動する必要はなく、「オフラインにする」タスクを開始するために使用されたSQL ServerManagementStudioインスタンスのみを再起動する必要がある場合があります。

于 2012-10-15T12:27:28.820 に答える