Discover our Clipsal Smart Home packages as seen on the Block

in location

OR

I'm looking for

  • Wholesalers
    • Uncheck All Check All
  • EXPERTISE
    • Expand
    • Expand
    • Expand
    • Uncheck All Check All
  • Switchboard Manufacturers
    • Uncheck All Check All
OR

The best way to see what Clipsal electric products can do for your home is seeing them in action at a Clipsal Display Centre.

Product stock may vary according to location. If you're after a specific product range, please check with your chosen location before visiting.

10 Results
    Load More Load Complete
    Change Location

    How to Terminate All Sessions Prior to Restoring a Database

    Issue
    Cannot restore a database.  Restore Database operation fails reporting that exclusive access could not be obtained because the database is in use.

    Product
    Microsoft SQL Server

    Environment
    SQL Server 2005, SQL Server 2008 R2, SQL Server 2012, SQL Server 2014

    Cause
    Before an existing database can be restored, there should be no connections using the database. If the database is currently in use the RESTORE command fails with below error:
    Msg 3101, Level 16, State 1, Line 2
    Exclusive access could not be obtained because the database is in use.
    Msg 3013, Level 16, State 1, Line 2
    RESTORE DATABASE is terminating abnormally.

    Resolution
    To avoid this, we need to terminate all sessions which using the database. All sessions using the database can be obtained
    by executing the system stored procedure sp_who2
    or by querying the sys.dm_exec_sessions table as:
     
    SELECT   session_id
    FROM     sys.dm_exec_sessions
    WHERE    DB_NAME(database_id) = 'RestoringDatabaseName'

    You need to terminate each of the sessions returned individually by using KILL command.

    If there are large number of sessions to terminate, or you need to do this on a routinely,this can be a lengthy and tedious process.
    You can *automate* this using below script, which takes database name as input, and terminates all sessions connecting to it.

    USE [master]
    GO
     
    DECLARE @dbName SYSNAME
    DECLARE @sqlCmd VARCHAR(MAX)
     
    SET @sqlCmd = ''
    SET @dbName = 'RestoringDatabaseName' -- Change database name here
     
    SELECT   @sqlCmd = @sqlCmd + 'KILL ' + CAST(session_id AS VARCHAR) +
             CHAR(13)
    FROM     sys.dm_exec_sessions
    WHERE    DB_NAME(database_id) = @dbName
     
    PRINT @sqlCmd
     
    --Uncomment below line to kill
    --EXEC (@sqlCmd)

    ** see attachment containing the SQL script text

    Didn’t find what you were looking for?

    Try Searching Again View Our Categories

    Need further assistance?

    Our Customer Care department provides total customer service solutions for our residential, industrial and commercial applications.

    Get Assistance