Discover how to avoid deadlock in sql server, include the articles, news, trends, analysis and practical advice about how to avoid deadlock in sql server on alibabacloud.com
In two or more SQL server processes, a deadlock occurs when each process locks the resources that other processes attempt to lock. For example,The process process1 holds one exclusive lock (x) for Table1, and process1 requests one exclusive lock (x) for Table2 ),The process process2 holds one exclusive lock (x) for Table2, and process2 requests one exclusive lock
4 methods for backing up databases from SQL Server and 4 methods for SQL Server
1. SQL server maintenance plan
Here I will not explain it. This is relatively simple. It is nothing more than dragging two 'backup database' tasks and
, and then select the following events to monitor: 1. Deadlock graph 2, Lock:deadlock 3, Lock:deadlock Chain 4, sql:stmtcompleted 5, Sql:stmtstarting Then limit the scope of the monitored objects by qualifying the database. After the configuration is done, run the trace and run the script in SSMs. SQL Server automatically handles and detects this type of
see the following:16, click "Deadlock graph" time, will show the image of the deadlock:17. You can save the deadlock image, right-click and select Export event data and save as XDL file:Here is its XML format:Analysis:In this article, you first create a profiler blank template, and then select the following events to monitor:1.
Basic knowledgeTo understand the deadlock in SQL Server, a better way is to understand the deadlock from a larger perspective through analogy. For example, a typical example is the requisition of vehicles (subjects) for roads (resources), as shown in Figure 1.Intuitive understanding of deadlocksIn the example in figure
relational databases, such as SQL Server, use locks to avoid concurrency conflicts when multiple users modify data. When a set of data is locked by a user, other users cannot modify the group's data unless the first user finishes modifying and releasing the lock. Some databases, including SQL
included in the account configuration information. e-Mail Retry configuration: Specifies how many times the email is sent and the retry interval.e-Mail size limit: The size of the sent message configuration. List of excluded Attachment extensions: Provides the list log level for prohibited extensions:Specifies that logging is performed at that level.We recommend creating a mail-only account.Can be configured by ssms→ management → Database Mail. Archive: You can view information through the foll
as to maximize the efficiency; otherwise, the thread pool of SQL Server is enabled by using the number of threads 45, in a certain order to access your table. If you lock table A and then lock table B, you must lock them in this order in all stored procedures. If you (inadvertently) lock table B in a stored procedure, and then lock Table A, this could result in a deadl
Deadlock Dead lock
Exception Handling Exception handler
Transaction and nested Transaction (nested)
Index
Best Practice
Performance Optimization
Classic SQL statements
SQL Server Profile monitoring performance
Execution Plan (reference)
Usage of XML in SQL
Let's talk about the Views in SQL Server and SQL Server.
1. What is a view?
2. Why view;
3. order by in the view;
4. Refresh the view;
5. Update the view;
6. view options;
7. Index View;
1. What is a view?
A view is a virtual table defined by a query. Unlike a physical table, the data in the view has no physical repres
Someone asked me how to capture and record the deadlock information on the Forum. Here, I will share some of my experiences with you, and I would like to ask you to correct them.
We know that we can use the profiler tool provided by SQL Server to track deadlock information. However, this method has a big flaw, that is,
Tags: SQL Server optimizationAlthough the query speed is a lot of reasons, but if through a certain optimization, you can also make the query problem to a certain extent to be resolved.The reasons for the slow query are many, and the following are common:
No index or index is not used (this is the most common problem of slow query, is the defect of program design)
I/O throughput is small, creat
previously relational academic, the update lock is called an asymmetric lock (asymmetric lock). In the context of the update lock, this update lock is compatible with the shared lock, but vice versa: the shared lock is incompatible with the update lock. However, SQL Server does not implement shared locks as asymmetric locks. Update locks are symmetric (symmetric), meaning that update locks and shared locks
immediately. If the application does not extract all the result rows, the lock may stay on the table and block other users. If you use an application that transparently submits a Transact-SQL statement to the server, the application must extract all the result rows. If the application does not do this (if it cannot be configured to do so), the blocking problem may not be resolved. To
1.4 Automatic File growth and automatic contraction
SQL Server allows you to set the initial value and maximum value of a database, which can automatically increase or contract. These settings can prevent application modification failures caused by database space problems or SQL Server from exhausting hard disk space.
Someone asked me how to capture and record the deadlock information on the Forum. Here, I will share some of my experiences with you, and I would like to ask you to correct them.
We know that you can useSQLThe profiler tool provided by the server is used to track deadlock information. However, this method has a big flaw, that is, it consumes a lot. According to a
manner, and reasonably utilize parallel queries to greatly improve SQL Execution efficiency.
In order to make good use of parallelism, you must pay attention to it when writing SQL statements to prevent parallel operations from being restrained and affecting the performance.
SQL optimization is a difficult and repetitive process. Even so, it is a pleasure.
In th
converted to the exclusive (X) lock, and each transaction waits for another transaction to release the share mode lock, a deadlock occurs.
To avoid this potential deadlock problem, use the update (U) Lock. Only one transaction can obtain the resource Update (U) Lock at a time. If the transaction modifies the resource, the update (U) Lock is converted to the row
Start now.Here we can see the analysis after the success of the analysis report, this does not count, we click on the aboveRecommendations TabHere are the tables you need to optimize, how to build indexes and views to improve performance more effectively, more fun is even need to optimize the SQL statements are generated,We'll just copy and execute.To save a deadlock graph:To Save the
isolation level.
4) use the table-level locking prompt for select, insert, update, and delete statements.
5) configure the index lock Granularity
You can use the sp_indexoption system stored procedure to set the locking granularity for indexes.
6. view the lock Information
1. Execute exec sp_lock to report lock information.
2. Press Ctrl + 2 in the query analyzer to view the lock information.
Seven precautions
How to avoid deadlocks
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.