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

DB2數(shù)據(jù)庫(kù)為單個(gè)會(huì)話鎖定的技巧

運(yùn)維 數(shù)據(jù)庫(kù)運(yùn)維 數(shù)據(jù)庫(kù)
單個(gè)會(huì)話現(xiàn)在可以指定鎖定等待方式策略,該策略在會(huì)話需要的鎖定不能立即獲取時(shí)使用。DB2從版本8.2開(kāi)始,客戶可以為每一個(gè)DB2會(huì)話指定鎖定策略。

DB2從版本8.2開(kāi)始,客戶可以為每一個(gè)DB2會(huì)話指定鎖定策略。在以前的版本中,只能通過(guò)配置數(shù)據(jù)庫(kù)配置參數(shù)LOCKTIMEOUT配置一個(gè)應(yīng)用程序如果不能獲得鎖,等待多長(zhǎng)時(shí)間將回滾該事務(wù)。

單個(gè)會(huì)話現(xiàn)在可以指定鎖定等待方式策略,該策略在會(huì)話需要的鎖定不能立即獲取時(shí)使用。該策略指示會(huì)話是否將采取如下措施:在不能獲取鎖定時(shí)返回 SQLCODE 和 SQLSTATE

◆無(wú)限等待鎖定

◆等待為鎖定指定的時(shí)間

◆等待鎖定時(shí)使用 locktimeout 數(shù)據(jù)庫(kù)配置參數(shù)的值

鎖定等待方式策略通過(guò)新的 SET CURRENT LOCK TIMEOUT 語(yǔ)句指定,此語(yǔ)句更改 CURRENT LOCK TIMEOUT 專用寄存器的值。CURRENT LOCK TIMEOUT 專用寄存器指定在返回指示不能獲取鎖定的錯(cuò)誤之前等待鎖定的秒數(shù)。

雖然 locktimeout 參數(shù)的值適用于所有鎖定,但是此新功能只影響以下鎖定類型:行、表、索引鍵和多維群集(MDC)塊鎖定。

該語(yǔ)句的語(yǔ)法如下:

.-CURRENT-. .-=-. 
  >>-SET--+---------+--LOCK TIMEOUT--+---+------------> 
  >--+-WAIT-----------------------+------------>< 
  +-NOT WAIT-------------------+ 
  +-NULL-----------------------+ 
  | .-WAIT-. | 
  +-+------+-- integer-constant -+ 
  '- host-variable --------------'

下面通過(guò)一個(gè)例子來(lái)講解如何使用這個(gè)功能(我們使用SAMPLE數(shù)據(jù)庫(kù)):

1、使用"db2 +c"打開(kāi)兩個(gè)DB2會(huì)話。(+c 參數(shù)關(guān)閉AUTOCOMMIT)

2、在一個(gè)會(huì)話中執(zhí)行下面的語(yǔ)句:

  connect to sample 
  create table test(id int,name char(10)) 
  commit 
  insert into test values(1,'test')

3、在另一個(gè)會(huì)話中執(zhí)行下面的語(yǔ)句:

connect to sample 
  select * from test

由于LOCKTIMEOUT默認(rèn)參數(shù)為-1,所以這個(gè)會(huì)話會(huì)一直等著,沒(méi)有結(jié)果返回。如下圖所示:

LOCKTIMEOUT參數(shù)設(shè)置

4、下面我們?cè)诘谝桓璐翱谥兄貜?fù)一樣的操作,只是在第二個(gè)窗口中使用如下語(yǔ)句

 set current lock timeout not wait 
  select * from test

我們看到select語(yǔ)句不會(huì)等待,而是直接返回錯(cuò)誤。參見(jiàn)下圖:

錯(cuò)誤界面

 您可以自己采取上面的方法測(cè)試一下其他的參數(shù)設(shè)置。

該語(yǔ)句可以在程序中和存儲(chǔ)過(guò)程中使用。另外這個(gè)功能對(duì)于CLI程序來(lái)講,還可以方便地通過(guò)設(shè)置db2cli.ini文件配置關(guān)鍵字使用,關(guān)鍵字為:


LOCKTIMEOUT = WAIT | NOT WAIT | WAIT seconds | seconds


通過(guò)設(shè)置這個(gè)參數(shù),DB2 CLI會(huì)自動(dòng)根據(jù)設(shè)置值發(fā)送一條“SET CURRENT LOCK TIMEOUT”語(yǔ)句到DB2服務(wù)器,該參數(shù)值也可以通過(guò)在程序中顯示使用

“SET CURRENT LOCK TIMEOUT”重置。

您可以根據(jù)您應(yīng)用程序的需求,靈活運(yùn)用這條語(yǔ)句設(shè)計(jì)合適的DB2會(huì)話鎖定策略。

 

【編輯推薦】

  1. DB2故障處理的思路及一般問(wèn)題的解決辦法
  2. 深入DB2代理的工作原理與連接過(guò)程
  3. 利用函數(shù)解決DB2中日期時(shí)間問(wèn)題
  4. DBase:DB2必須了解的常用命令及技巧
  5. 如何在DB2中提高IMPORT性能
責(zé)任編輯:佚名 來(lái)源: IT專家網(wǎng)
相關(guān)推薦

2011-05-13 10:32:54

DB2數(shù)據(jù)庫(kù)

2010-08-02 14:50:41

DB2數(shù)據(jù)庫(kù)

2010-09-07 10:36:56

DB2數(shù)據(jù)庫(kù)

2010-07-29 08:40:16

DB2數(shù)據(jù)庫(kù)

2010-08-04 16:52:23

2010-07-30 11:01:55

2009-12-16 10:48:42

DB2數(shù)據(jù)庫(kù)

2011-03-15 14:13:56

JDBCDB2數(shù)據(jù)庫(kù)

2010-08-27 10:20:11

DB2數(shù)據(jù)庫(kù)優(yōu)化

2011-05-13 09:59:14

DB2數(shù)據(jù)庫(kù)備份

2009-02-26 09:34:16

性能優(yōu)化DB2數(shù)據(jù)庫(kù)

2010-08-18 11:06:23

連接DB2數(shù)據(jù)庫(kù)

2011-03-02 17:56:40

DB2數(shù)據(jù)庫(kù)

2011-03-11 16:02:03

DB2數(shù)據(jù)庫(kù)安裝

2010-07-30 09:22:54

DB2實(shí)現(xiàn)

2010-08-27 13:27:50

DB2備份恢復(fù)

2011-03-16 16:03:00

DB2數(shù)據(jù)庫(kù)

2010-08-09 12:56:11

2010-07-27 18:00:59

DB2數(shù)據(jù)庫(kù)備份

2010-11-03 16:32:10

DB2創(chuàng)建數(shù)據(jù)庫(kù)
點(diǎn)贊
收藏

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