Label:The use of SQL Server as a database application system, will not be able to sometimes create a deadlock, after the deadlock, the maintenance personnel or developers will mostly only through the sp_who to find the deadlock process, and then killed with Sp_kill. With Sp_who_lock This stored procedure, it is easy to
Label:Many times, deadlocks are requested by two or more sessions to hold the other session of the lock while holding other session, but there are some special deadlock only by a single session lock triggered, today saw a related article, transported to share with you! The code that caused the deadlock: Execution Environment SQL SERVER 2012 (11.0.5058) BEGIN TRAN
Label:" This SQL job has been running every day well, I suddenly did not take effect? " Encounter this sudden problem, my heart is calm, things can not be inexplicable, because it is a SQL job problem, first need to view the job history sure enough a big x obvious don't want to continue to look at the wrong content: executed as user NT Authority\Network SERVICE. The transaction (Process ID 51) is deadl
Using SQL Server as a database application system, can not avoid the sometimes deadlock, deadlock, maintenance personnel or developers will only through the sp_who to find the deadlock process, and then kill with Sp_kill. Using Sp_who_lock, this stored procedure makes it easy to know which process is deadlocked and whe
Deadlocks and blockages have always been the focus of performance test execution.Here are the monitored SQL Server databases I've compiled, whether there are deadlocks or blocked SQL statements during the performance test, and it's relatively ready to leave.--Number of deadlocks per secondSELECT * from Sys.dm_os_performance_counters WHERE counter_name like ' number of deadlocksc% ';--Query Current blockingW
.
status
nchar (+)
Process ID status. The possible values are: dormant= SQL Server is resetting the session. The running= The session is running one or more batches. When multiple Active Result sets (MARS) is enabled, a session can run multiple batches. For more information, seeusing multiple Active Result sets (MARS). Background= The session is running a background task, such as
sp_lock, it is possible to get different results because new locks have taken place, and some of the old locks have been lifted. If you find that sp_lock returns a large number of results with the same SPID, it is likely that the process is undergoing large processing, and these locks may begin to prevent new transactions from occurring.When you find that a SPID acquires a large number of database locks, this will help determine what stored procedures or statements are running. To achieve this,
Label:Method One: With Cte_sid (Bsid, SID, sql_handle) As (SELECT blocking_session_id, session_id, Sql_handle From sys.dm_exec_requests WHERE blocking_session_id UNION All SELECT a.blocking_session_id, A.SESSION_ID, A.sql_handle From Sys.dm_exec_requests A JOIN cte_sid B on a.session_id = B.bsid ) SELECT C.bsid, C.sid, S.login_name, S.host_name, S.status, S.cpu_time, S.memory_usage, S.last_request_start_time, S.last_request_end_time, S.logical_reads, S.row_count, Q.text From Cte_sid C JOIN sys.
' asmessage--Cycle Start while @intCounter @intCountProperties BEGIN--take the first record SELECT @spid =spid,@bl =BL from#tmp_lock_whoWHEREId= @intCounter BEGIN IF @spid = 0 SELECT 'causing the database to be slow is:' + CAST(@bl as VARCHAR(Ten)) + 'process number, which executes the following SQL syntax'
,net_address,S1=a.spid,s2=0From Master. sysprocesses a Join (Select blocked from master. sysprocesseswhere blocked>0and (@dbid is null or [email protected])Group by blocked) B on a.spid=b.blockedwhere a.blocked=0and (@dbid is null or [email protected])UNION ALLSelect ' |_ victim _> ',Spid,kpid,blocked,dbid,uid,loginame,cpu,login_time,open_tran,Status,hostname,program_name,hostprocess,nt_domain,net_address,S1=blocked,s2=spidFrom Master. sysprocesses Awhere blockedand (@dbid is null or [email prot
Tags:whileentrycas loops serve Blocking selectobjecttran Use [master] GO/****** Object: storedprocedure [dbo]. [Sp_who_lock] script date:07/30/2015 13:52:38 ******/SET ansi_nulls on Go SET quoted_identifier on Go ALTER procedure [dbo]. [Sp_who_lock] as BEGIN declare @spid int, @bl int, @intTransactionCountOnEntry int, NBS P @intRowcount int, @intCountProperties int, @intCount ER int CREATE TABLE #tmp_lock_who (ID int identity (SMALLINT,BL), spid smallint) IF @ @ERROR
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.