“脱机”过程失败后无法访问数据库

时间:2012-07-09 06:22:37

标签: sql sql-server sql-server-2008-r2

我试图分离数据库,因为它给了我一个当前正在使用的错误。因此,我试图让我的数据库脱机,但它没有说

'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)'

现在,如果我尝试访问数据库,则说它无法访问。我该怎么做才能再次访问我的数据库?

我的目标是分离数据库,将其辅助数据库文件重新定位到新驱动器并重新连接(仅仅因为空间问题)。

2 个答案:

答案 0 :(得分:14)

尝试以下步骤。

  1. 使用services.msc控制台重新启动SQL Server服务。
  2. 现在使用SQL Server Management Studio连接到您的服务器。
  3. 在查询分析器中运行以下命令

      ALTER DATABASE `YOURDATABASE_NAME`  
      SET SINGLE_USER WITH ROLLBACK IMMEDIATE 
    
  4. 现在,右键单击数据库名称,指向“任务”,然后单击“分离”。出现“分离数据库”对话框

  5. OR 5.运行命令以重新定位辅助数据库。

    1. 再次将数据库模式设置为多用户

      ALTER DATABASE `YOURDATABASE_NAME` SET MULTI_USER 
      
    2. 希望这有帮助。

答案 1 :(得分:12)

作为Furqan答案中第一步的替代方法,您可能不需要重新启动SQL Server实例,而只需要重新启动SQL Server Management Studio实例,该实例用于启动“脱机”任务。