sql >> Databáze >  >> RDS >> Sqlserver

DBA - Jak zabít všechny databázové procesy na serveru SQL

Níže uvedený kód lze použít k ukončení všech procesů databáze SQL Server. Kód lze použít v situacích, kdy nelze provést změny v databázi, pokud v databázi běží jakýkoli proces, například nelze provést přejmenování databáze, pokud v této databázi běží jakýkoli proces.

USE MASTER
GO
DECLARE @DatabaseName AS VARCHAR(500)
-->Provide the DataBaseName for which want to Kill all processes.
SET @DatabaseName='YourDataBaseName'
DECLARE @Spid INT
DECLARE KillProcessCur CURSOR FOR
  SELECT spid
  FROM   sys.sysprocesses
  WHERE  DB_NAME(dbid) = @DatabaseName
OPEN KillProcessCur
FETCH Next FROM KillProcessCur INTO @Spid
WHILE @@FETCH_STATUS = 0
  BEGIN
      DECLARE @SQL VARCHAR(500)=NULL
      SET @SQL='Kill ' + CAST(@Spid AS VARCHAR(5))
      EXEC (@SQL)
      PRINT 'ProcessID =' + CAST(@Spid AS VARCHAR(5))
            + ' killed successfull'
      FETCH Next FROM KillProcessCur INTO @Spid
  END
CLOSE KillProcessCur
DEALLOCATE KillProcessCur

  1. Škálování PostgreSQL pro velké množství dat

  2. Jak funguje indexování

  3. Použití JShell v Javě 9 v NetBeans 9.0, část 2

  4. Jak STRCMP() funguje v MariaDB