由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Database版 - SQL server 2005 deadlock
相关主题
急!各位请进:process blocked by another process如何启动Visual Studio 2005中的Visual SQL 2005?
SQL Server Question: how delete worksDatabase Encryption
SQL 2005 book请问T-SQL中Group By之后怎么找到特定的record
同事被FIRE掉了请问Reporting Service System (RSS) 客户安装
error file或者exception fileSQL 2005 自带的SQL Server Business Intelligence Development Studio
有考SQL 2008 70-433认证得吗NOLOCK为什么不是蓝色的?
sql server 面试题 (9)抛砖引玉: 谈谈SQL Server locking and blocking
why this Trigger hang the Process *** thanks thanks新手请教SQL 语法问题- alias 和 join
相关话题的讨论汇总
话题: deadlock话题: insert话题: sql话题: server
进入Database版参与讨论
1 (共1页)
y*****n
发帖数: 11251
1
做了一个windows service,多线程的对一个table 做insert. 结果出现sql server
deadlock. Exception
Exception: System.Data.SqlClient.SqlException: Transaction (Process ID 128)
was deadlocked on lock resources with another process and has been chosen as
the deadlock victim. Rerun the transaction.
at System.Data.SqlClient.SqlConnection.OnError(SqlException
觉得简单insert应该不会lock太多index太久吧? 每次insert 1000条.
我对SQL server不熟, DBA上个月辞职不干了.大家多帮帮忙吧,我好能早点回家睡觉.
B*****g
发帖数: 34098
2
what is "windows service"?

)
as

【在 y*****n 的大作中提到】
: 做了一个windows service,多线程的对一个table 做insert. 结果出现sql server
: deadlock. Exception
: Exception: System.Data.SqlClient.SqlException: Transaction (Process ID 128)
: was deadlocked on lock resources with another process and has been chosen as
: the deadlock victim. Rerun the transaction.
: at System.Data.SqlClient.SqlConnection.OnError(SqlException
: 觉得简单insert应该不会lock太多index太久吧? 每次insert 1000条.
: 我对SQL server不熟, DBA上个月辞职不干了.大家多帮帮忙吧,我好能早点回家睡觉.

y*****n
发帖数: 11251
3
这个不重要,就算是个sql client吧.

【在 B*****g 的大作中提到】
: what is "windows service"?
:
: )
: as

i****a
发帖数: 36252
4
keep it at 2 threads and you should be ok. above 2 then you'll get deadlocks
but depends on what you are doing, it may not be a big deal if you can just
insert records again of the deadlock victims

)
as

【在 y*****n 的大作中提到】
: 做了一个windows service,多线程的对一个table 做insert. 结果出现sql server
: deadlock. Exception
: Exception: System.Data.SqlClient.SqlException: Transaction (Process ID 128)
: was deadlocked on lock resources with another process and has been chosen as
: the deadlock victim. Rerun the transaction.
: at System.Data.SqlClient.SqlConnection.OnError(SqlException
: 觉得简单insert应该不会lock太多index太久吧? 每次insert 1000条.
: 我对SQL server不熟, DBA上个月辞职不干了.大家多帮帮忙吧,我好能早点回家睡觉.

g***l
发帖数: 18555
5
一般INSERT时间太长就容易DEADLOCK,一INSERT,就开始TABLE BLOCKING,如果
TRANSACTION太长,另外的INSERT就要等很久.注意光SELECT的话就WITH (NOLOCK)
DIRTY READ好了
y*****n
发帖数: 11251
6
insert加了row lock了也不行。是不是insert都是lock整个table啊?
select with nolock也有deadlock。

【在 g***l 的大作中提到】
: 一般INSERT时间太长就容易DEADLOCK,一INSERT,就开始TABLE BLOCKING,如果
: TRANSACTION太长,另外的INSERT就要等很久.注意光SELECT的话就WITH (NOLOCK)
: DIRTY READ好了

y*****n
发帖数: 11251
7
要求至少20个thread。看来没法用2个了。

deadlocks
just

【在 i****a 的大作中提到】
: keep it at 2 threads and you should be ok. above 2 then you'll get deadlocks
: but depends on what you are doing, it may not be a big deal if you can just
: insert records again of the deadlock victims
:
: )
: as

g***l
发帖数: 18555
8
要看你的INSERT时间多长了,如果你INSERT大量数据,LOCK时间太长就会ESCALATE到
TABLE LEVEL
y*****n
发帖数: 11251
9
这个时间太长是怎么算的? 怎么才能看到每个transaction的时间?

【在 g***l 的大作中提到】
: 要看你的INSERT时间多长了,如果你INSERT大量数据,LOCK时间太长就会ESCALATE到
: TABLE LEVEL

g***l
发帖数: 18555
10
SP_WHO2?

【在 y*****n 的大作中提到】
: 这个时间太长是怎么算的? 怎么才能看到每个transaction的时间?
相关主题
有考SQL 2008 70-433认证得吗如何启动Visual Studio 2005中的Visual SQL 2005?
sql server 面试题 (9)Database Encryption
why this Trigger hang the Process *** thanks thanks请问T-SQL中Group By之后怎么找到特定的record
进入Database版参与讨论
a9
发帖数: 21638
11
你要求的线程再多,数据库处理不过来也没用啊。

【在 y*****n 的大作中提到】
: 要求至少20个thread。看来没法用2个了。
:
: deadlocks
: just

y*****n
发帖数: 11251
12
这不是我要求的。客户非要设成20个。

【在 a9 的大作中提到】
: 你要求的线程再多,数据库处理不过来也没用啊。
z***y
发帖数: 7151
13
什么公司? 愿不愿意招短期的DBA啊?
跟我联系吧。

)
as

【在 y*****n 的大作中提到】
: 做了一个windows service,多线程的对一个table 做insert. 结果出现sql server
: deadlock. Exception
: Exception: System.Data.SqlClient.SqlException: Transaction (Process ID 128)
: was deadlocked on lock resources with another process and has been chosen as
: the deadlock victim. Rerun the transaction.
: at System.Data.SqlClient.SqlConnection.OnError(SqlException
: 觉得简单insert应该不会lock太多index太久吧? 每次insert 1000条.
: 我对SQL server不熟, DBA上个月辞职不干了.大家多帮帮忙吧,我好能早点回家睡觉.

B*****g
发帖数: 34098
14
把我也带上吧

【在 z***y 的大作中提到】
: 什么公司? 愿不愿意招短期的DBA啊?
: 跟我联系吧。
:
: )
: as

y*****n
发帖数: 11251
15
NCR, prefer atlanta,GA area. Senior SQL dev/DBA position, mostly doing
development and support to retail business at store level. Experience with
DB system design, query optimization, and load balancing.
z***y
发帖数: 7151
16
很多情况造成Deadlock
你可以打开trace flag 1204 , 1222
然后可以在log里看到具体的情况。
如果是sql 2005+, 你可以试验一下snapshot isolation。

)
as

【在 y*****n 的大作中提到】
: 做了一个windows service,多线程的对一个table 做insert. 结果出现sql server
: deadlock. Exception
: Exception: System.Data.SqlClient.SqlException: Transaction (Process ID 128)
: was deadlocked on lock resources with another process and has been chosen as
: the deadlock victim. Rerun the transaction.
: at System.Data.SqlClient.SqlConnection.OnError(SqlException
: 觉得简单insert应该不会lock太多index太久吧? 每次insert 1000条.
: 我对SQL server不熟, DBA上个月辞职不干了.大家多帮帮忙吧,我好能早点回家睡觉.

z***y
发帖数: 7151
17
你把表定义和index 贴出来, 然后 打开trace, 把log贴出来, 我可以给你看看。

)
as

【在 y*****n 的大作中提到】
: 做了一个windows service,多线程的对一个table 做insert. 结果出现sql server
: deadlock. Exception
: Exception: System.Data.SqlClient.SqlException: Transaction (Process ID 128)
: was deadlocked on lock resources with another process and has been chosen as
: the deadlock victim. Rerun the transaction.
: at System.Data.SqlClient.SqlConnection.OnError(SqlException
: 觉得简单insert应该不会lock太多index太久吧? 每次insert 1000条.
: 我对SQL server不熟, DBA上个月辞职不干了.大家多帮帮忙吧,我好能早点回家睡觉.

B*****g
发帖数: 34098
18
你这个太敬业了

128
chosen
觉.

【在 z***y 的大作中提到】
: 你把表定义和index 贴出来, 然后 打开trace, 把log贴出来, 我可以给你看看。
:
: )
: as

y*****n
发帖数: 11251
19
问了下,production系统不让搞trace,看来只能自己想办法模拟了。

【在 z***y 的大作中提到】
: 你把表定义和index 贴出来, 然后 打开trace, 把log贴出来, 我可以给你看看。
:
: )
: as

gy
发帖数: 620
20
No need 1204 in SQL2005 and up

【在 z***y 的大作中提到】
: 很多情况造成Deadlock
: 你可以打开trace flag 1204 , 1222
: 然后可以在log里看到具体的情况。
: 如果是sql 2005+, 你可以试验一下snapshot isolation。
:
: )
: as

gy
发帖数: 620
1 (共1页)
进入Database版参与讨论
相关主题
新手请教SQL 语法问题- alias 和 joinerror file或者exception file
a simple question about T-SQL有考SQL 2008 70-433认证得吗
Problem when using SQL " Insert...." to AutoNumber.sql server 面试题 (9)
Help on Sql server huge table performancewhy this Trigger hang the Process *** thanks thanks
急!各位请进:process blocked by another process如何启动Visual Studio 2005中的Visual SQL 2005?
SQL Server Question: how delete worksDatabase Encryption
SQL 2005 book请问T-SQL中Group By之后怎么找到特定的record
同事被FIRE掉了请问Reporting Service System (RSS) 客户安装
相关话题的讨论汇总
话题: deadlock话题: insert话题: sql话题: server