自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

常見的SQL Server阻塞情形有哪些?

數(shù)據(jù)庫 SQL Server
以下的文章主要是介紹常見的SQL Server阻塞情形,假如你對SQL Server阻塞有不解之處的話,你就可以通過以下的文章對其有個更好的了解。

以下的文章主要描述的是常見的SQL Server阻塞情形,在實際操作中SQL Server阻塞是經(jīng)常出現(xiàn)的,那么它們會以什么形式出現(xiàn)的呢?以下的文章主要就是針對這一問題給出的答案,以下就是主要內(nèi)容描述。

1 .提交執(zhí)行時間長的查詢。

長時間運行的查詢會阻塞其它查詢。例如,影響很多行的 DELETE 或 UPDATE

操作能獲取很多鎖,這些鎖不論是否升級到表鎖都阻塞其它查詢。因此,一般不要將長時間運行的決策支持查詢和聯(lián)機事務(wù)處理 (OLTP)

查詢混在一起。解決方案是想辦法優(yōu)化查詢,如更改索引、將大的復(fù)雜查詢分成簡單的查詢或在空閑時間或單獨的計算機上運行查詢。

2 .查詢不適當?shù)厥褂糜螛恕S螛丝赡苁窃诮Y(jié)果集中瀏覽的便利方法,但使用游標可能比使用面向集合的查詢慢。

3 .取消沒有提交或回滾的查詢。

如果應(yīng)用程序取消查詢(如使用開放式數(shù)據(jù)庫連接 (ODBC) sqlcancel 函數(shù))但沒有同時發(fā)出所需數(shù)目的 ROLLBACK 和 COMMIT 語句,則會發(fā)生這種情況。取消查詢并不自動回滾或提交事務(wù)。取消查詢后,所有在事務(wù)內(nèi)獲取的鎖都將保留。應(yīng)用程序必須提交或回滾已取消的事務(wù),從而正確地管理事務(wù)嵌套級。

4 .應(yīng)用程序沒處理完所有結(jié)果。

將查詢發(fā)送到服務(wù)器后,所有應(yīng)用程序必須立即完成提取所有結(jié)果行。如果應(yīng)用程序沒有提取所有結(jié)果行,鎖可能會留在表上而阻塞其他用戶。如果使用的應(yīng)用程序?qū)ransact-SQL 語句透明地提交給服務(wù)器,則該應(yīng)用程序必須提取所有結(jié)果行。

如果應(yīng)用程序沒這樣做(如果無法配置它執(zhí)行此操作),則可能無法解決阻塞問題。為避免此問題,可以將這些應(yīng)用程序限制在報表或決策支持數(shù)據(jù)庫上。

5 .分布式客戶端/服務(wù)器死鎖。

與常規(guī)死鎖不同,分布式死鎖無法由 Microsoft SQL Server? 2000 自動檢測到。如果應(yīng)用程序打開多個與 SQL Server 的連接并異步提交查詢,則可能會發(fā)生分布式客戶端/服務(wù)器死鎖。

例如,一個客戶端應(yīng)用程序線程有兩個開放式連接。該線程異步啟動事務(wù)并在***個連接上發(fā)出查詢。應(yīng)用程序隨后啟動其它事務(wù),在另一個連接上發(fā)出查詢并等待結(jié)果。當 SQL Server 返回其中一個連接的結(jié)果時,應(yīng)用程序開始處理這些結(jié)果。

應(yīng)用程序就這樣處理結(jié)果,直到生成結(jié)果的查詢被另一個連接上執(zhí)行的查詢阻塞而導(dǎo)致再沒有可用的結(jié)果為止。此時***個連接阻塞,無限期等待處理更多的結(jié)果。第二個連接沒有在鎖上阻塞,但仍試圖將結(jié)果返回給應(yīng)用程序。然而,由于應(yīng)用程序阻塞而在***個連接上等待結(jié)果,第二個連接的結(jié)果將得不到處理。

以上的相關(guān)內(nèi)容就是對常見的SQL Server阻塞情形的介紹,望你能有所收獲。

上述的相關(guān)內(nèi)容就是對常見的SQL Server阻塞情形的描述,希望會給你帶來一些幫助在此方面。

【編輯推薦】

  1. SQL Server視圖索引與索引視圖指南
  2. 對SQL Server聚集索引的指示描述
  3. 用SQL Server索引密度對行數(shù)進行評估
  4. SQL Server索引直方圖的內(nèi)容描述
  5. SQL Server索引選擇的引用與建議
責任編輯:佚名 來源: 機械工業(yè)出版社
相關(guān)推薦

2010-07-20 11:18:12

SQL server阻

2010-07-20 11:31:25

SQL Server避

2010-07-12 14:13:15

SQL Server開

2010-07-06 17:16:43

SQL Server視

2010-06-29 17:45:22

SQL Server

2010-07-08 13:13:14

清除SQL Serve

2010-07-15 09:14:32

SQL server組

2010-07-13 17:02:18

SQL Server

2010-07-22 14:16:59

SQL Server

2013-02-20 16:02:02

Android開發(fā)內(nèi)存泄露

2010-07-13 10:43:26

SQL Server數(shù)

2010-07-23 14:18:47

SQL Server數(shù)

2010-07-19 09:31:53

SQL Server系

2010-06-17 15:17:24

SQL Server

2010-07-08 13:06:05

SQL Server刪

2010-07-16 13:48:08

SQL Server合

2010-07-19 09:13:20

升級到SQL Serv

2010-07-19 10:55:07

SQL Server

2010-06-18 12:37:04

SQL Server查

2011-02-18 17:31:18

SQL Server
點贊
收藏

51CTO技術(shù)棧公眾號