當前位置:首頁 » 操作系統 » db2資料庫解鎖

db2資料庫解鎖

發布時間: 2022-03-05 11:06:10

㈠ 如何查詢db2資料庫表是否被鎖

1、首先點擊桌面上的SQL server資料庫。

㈡ 用SQL如何給DB2表加鎖和解鎖

在DB2的命令行中輸入:
update monitor switches using lock on table on
然後打開另一個DB2命令窗口執行我的那個被弔死的Update語句。
然後在第一個DB2命令窗口執行: [@more@]get snapshot for locks on Database_Name(你的資料庫的名字)> locks.TXT

然後,可以看到第一個DB2的窗口有一個信息輸出,把這些信息輸出到TXT中,大致如下:

應用程序句柄 = 36
應用程序標識 = AC100C47.IC05.00F6C6095828
序號 = 0246
應用程序名 = java.exe
CONNECT 授權標識 = DB2ADMIN
應用程序狀態 = UOW 正在等待
狀態更改時間 = 未收集
應用程序代碼頁 = 1208
掛起的鎖定 = 0
總計等待時間(毫秒) = 0

應用程序句柄 = 43
應用程序標識 = *LOCAL.DB2.060512054331
序號 = 2273
應用程序名 = java.exe
CONNECT 授權標識 = DB2ADMIN
應用程序狀態 = 聯合請求暫掛
狀態更改時間 = 未收集
應用程序代碼頁 = 1208
掛起的鎖定 = 6
總計等待時間(毫秒) = 0

鎖定列表
鎖定名稱 = 0x031F9052000000000000000055
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 255
掛起計數 = 0
鎖定對象名 = 0
對象類型 = 內部
方式 = S

鎖定名稱 = 0x26800000000000000000000044
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 0
對象類型 = 內部
方式 = S

鎖定名稱 = 0x020006000F1700000000000052
鎖定屬性 = 0x00000000
發行版標志 = 0x00000001
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 5903
對象類型 = 行
表空間名 = USERSPACE1
表模式 = DB2ADMIN
表名 = C_USER
方式 = NS

鎖定名稱 = 0x01000000010000000500BC0056
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 0
對象類型 = 內部變化鎖定
方式 = S

鎖定名稱 = 0x535953534E333030FD965C0641
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 0
對象類型 = 內部方案鎖定
方式 = S

鎖定名稱 = 0x02000600000000000000000054
鎖定屬性 = 0x00000000
發行版標志 = 0x00000001
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 6
對象類型 = 表
表空間名 = USERSPACE1
表模式 = DB2ADMIN
表名 = C_USER
方式 = IS

應用程序句柄 = 557
應用程序標識 = *LOCAL.DB2.060512053913
序號 = 1254
應用程序名 = java.exe
CONNECT 授權標識 = DB2ADMIN
應用程序狀態 = 聯合請求暫掛
狀態更改時間 = 未收集
應用程序代碼頁 = 1208
掛起的鎖定 = 6
總計等待時間(毫秒) = 0

鎖定列表
鎖定名稱 = 0x031F9052000000000000000055
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 255
掛起計數 = 0
鎖定對象名 = 0
對象類型 = 內部
方式 = S

鎖定名稱 = 0x26800000000000000000000044
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 0
對象類型 = 內部
方式 = S

鎖定名稱 = 0x02000600071D00000000000052
鎖定屬性 = 0x00000000
發行版標志 = 0x00000001
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 7431
對象類型 = 行
表空間名 = USERSPACE1
表模式 = DB2ADMIN
表名 = C_USER
方式 = NS

鎖定名稱 = 0x01000000010000000500BC0056
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 0
對象類型 = 內部變化鎖定
方式 = S

鎖定名稱 = 0x535953534E333030FD965C0641
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 0
對象類型 = 內部方案鎖定
方式 = S

鎖定名稱 = 0x02000600000000000000000054
鎖定屬性 = 0x00000000
發行版標志 = 0x00000001
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 6
對象類型 = 表
表空間名 = USERSPACE1
表模式 = DB2ADMIN
表名 = C_USER
方式 = IS

其中應用程序句柄43和557的狀態都是死鎖了,猜測是這2個應用爭用DB2的表,造成死鎖,根據日誌提示,在DB2的命令窗口輸入:
force application (43)
force application (557)
提示這個操作是非同步的,我執行list applicaions,結果進程中還有那2個進程,那2個進程可能是在執行比較大的操作,需要耐心等待,如何還不行,則使用下面的命令來強制所有的應用都停止,然後重啟DB2:
force application all
terminate
db2stop force
db2start
如果DB2在Window上,則可以使用「控制中心」->實例->右鍵「應用程序」,可以看到當前的鎖定情況,並且可以強行關閉某個進程,也可以顯示「鎖定鏈」。

㈢ DB2 用戶密碼異常,被鎖住,怎麼解鎖

電腦密碼鎖定,如法進入系統的解決方法有以下幾種:

1、 方法一、Administrator密碼為空情況要是我們開機後界面上沒有出現Administrator這個用戶名的話,那麼我們就在這個界面狀態下按住「Ctrl」+「Alt」鍵,然後再連續按兩次「Delete」鍵這是會出現一個Windows的經典登錄界面,用戶名就是Administrator,密碼為空,確定登錄到系統中修改忘記密碼的賬戶密碼

2、方法二:安全模式下破解開機密碼如果是管理員Administrator的密碼忘記的話,重新啟動電腦,開機後連續按F8鍵直到高級選項畫面出現後,再松開手,選擇「命令提示符的安全模式」回車。

3、進入命令提示符安全模式後,系統會列出系統超級用戶administrator和本地用戶*****的選擇菜單,滑鼠單擊administrator」進入命令行模式

4、鍵入命令:「net user ***** 123456 /add」,強制將「*****」用戶的口令更改為「123456」。若想在此添加一新用戶(如:用戶名為abcdef,口令為123456)的話,請鍵入「net user abcdef 123456 /add」,添加後可用「net localgroup administrators abcdef /add」命令將用戶提升為系統管理組「administrators」的用戶,並使其具有超級許可權。

5、重新啟動計算機,選擇正常模式下運行,就可以用更改後的口令「123456」登錄「*****」用戶了

㈣ db2如何解決死鎖

先定位一下是哪個程序句柄導致的死鎖。

方法一、查看db2diag.log文件
找到DeadLock or Lock timeout 死鎖或鎖超時信息
db2 force application(句柄ID)
直接結束進程即可。

方法二、DB2快照信息
1、看一下DB2快照信息

db2 get snapshot for locks on sample
可以得到類似信息:
資料庫鎖定快照
資料庫名稱 = SAMPLE
資料庫路徑 = D:\IBM\DB2\NODE0000\SQL00001\
輸入資料庫別名 = SAMPLE
掛起的鎖定 = 8
當前已連接的應用程序 = 2
當前正等待鎖定的代理程序數 = 1
應用程序句柄 = 54
應用程序標識 = *LOCAL.DB2.140304192925
序號 = 00001
應用程序名 = db2bp.exe CONNECT
授權標識 = DB2ADMIN
應用程序狀態 = 鎖定等待
應用程序代碼頁 = 1208
掛起的鎖定 = 4
總計等待時間(毫秒) = 247867

鎖定列表

鎖定名稱 = 0x5359534C564C3031DDECEF2841
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 2312
對象類型 = 行
表空間名 = IBMDB2SAMPLEREL
表模式 = DB2ADMIN
表名 = TEST
方式 = IX

查看鎖定的詳細信息:db2 get snapshot for locks for application agentid 1728
----(1728是句柄ID)

3、觀察命令db2 list applications的輸出
查看應用程序的狀態是否有鎖定等待(Lock-wait)狀態出現。
執行命令 list applications for db sample show detail;
4、db2 force application(句柄ID)
直接結束進程即可。

㈤ 資料庫DB2鎖表問題

如果要ora的執行方式,可以打開v97的 cur_commit

㈥ DB2資料庫發生死鎖了怎麼辦

先定位一下是哪個程序句柄導致的死鎖。

方法一、查看db2diag.log文件
找到DeadLock or Lock timeout 死鎖或鎖超時信息
db2 force application(句柄ID)
直接結束進程即可。

方法二、DB2快照信息
1、看一下DB2快照信息
db2 get snapshot for locks on sample
可以得到類似信息:
資料庫鎖定快照
資料庫名稱 = SAMPLE
資料庫路徑 = D:\IBM\DB2\NODE0000\SQL00001\
輸入資料庫別名 = SAMPLE
掛起的鎖定 = 8
當前已連接的應用程序 = 2
當前正等待鎖定的代理程序數 = 1
應用程序句柄 = 54
應用程序標識 = *LOCAL.DB2.140304192925
序號 = 00001
應用程序名 = db2bp.exe CONNECT
授權標識 = DB2ADMIN
應用程序狀態 = 鎖定等待
應用程序代碼頁 = 1208
掛起的鎖定 = 4
總計等待時間(毫秒) = 247867

鎖定列表

鎖定名稱 = 0x5359534C564C3031DDECEF2841
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 2312
對象類型 = 行
表空間名 = IBMDB2SAMPLEREL
表模式 = DB2ADMIN
表名 = TEST
方式 = IX

查看鎖定的詳細信息:db2 get snapshot for locks for application agentid 1728
----(1728是句柄ID)
3、觀察命令db2 list applications的輸出
查看應用程序的狀態是否有鎖定等待(Lock-wait)狀態出現。
執行命令 list applications for db sample show detail;
4、db2 force application(句柄ID)
直接結束進程即可。

㈦ DB2如何解決並發鎖表問題

先定位一下是哪個程序句柄導致的死鎖。
方法一、查看db2diag.log文件
找到DeadLock or Lock timeout 死鎖或鎖超時信息
db2 force application(句柄ID)
直接結束進程即可。
方法二、DB2快照信息
1、看一下DB2快照信息
db2 get snapshot for locks on sample
可以得到類似信息:
資料庫鎖定快照
資料庫名稱 = SAMPLE
資料庫路徑 = D:\IBM\DB2\NODE0000\SQL00001\
輸入資料庫別名 = SAMPLE
掛起的鎖定 = 8
當前已連接的應用程序 = 2
當前正等待鎖定的代理程序數 = 1
應用程序句柄 = 54
應用程序標識 = *LOCAL.DB2.140304192925
序號 = 00001
應用程序名 = db2bp.exe CONNECT
授權標識 = DB2ADMIN
應用程序狀態 = 鎖定等待
應用程序代碼頁 = 1208
掛起的鎖定 = 4
總計等待時間(毫秒) = 247867
鎖定列表
鎖定名稱 = 0x5359534C564C3031DDECEF2841
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 2312
對象類型 = 行
表空間名 = IBMDB2SAMPLEREL
表模式 = DB2ADMIN
表名 = TEST
方式 = IX
查看鎖定的詳細信息:db2 get snapshot for locks for application agentid 1728
----(1728是句柄ID)
3、觀察命令db2 list applications的輸出
查看應用程序的狀態是否有鎖定等待(Lock-wait)狀態出現。
執行命令 list applications for db sample show detail;
4、db2 force application(句柄ID)
直接結束進程即可。

㈧ 如何解鎖DB2中被鎖定的表

1 表處於「檢查暫掛」狀態。未強製表的完整性並且表的內容可能是無效的
。如果從屬表處於檢查暫掛狀態,則對於未處於檢查暫掛的父表或基礎表的
操作也可能接收到此錯誤。
2 表處於「無數據移動」狀態。當處於此狀態時,禁止導致數據移動的操作
。數據移動操作包括 REDISTRIBUTE、
分區鍵的更新、多維群集鍵的更新和 REORG TABLE。
3 表處於「裝入暫掛」狀態。對此表的先前的 LOAD
嘗試失敗。在重新啟動或終止 LOAD 操作之前不允許對表進行存取。
4 表處於「只讀」狀態。此狀態可以在聯機裝入(LOAD)處理(帶有 READ
ACCESS 選項的 LOAD
INSERT)期間發生,或在聯機裝入(LOAD)操作後發生,除了在使用 SET
INTEGRITY 語句在表的新追加的部分驗證所有約束之前。不允許對此表的更
新活動。
5 表處於「正在裝入」狀態。LOAD 實用程序當前對此表進行操作,直到
LOAD 完成才允許存取。
6 不能在 ESE 中刷新引用昵稱的具體查詢表。
用戶響應:

1 對表 "<表名>" 執行帶有 IMMEDIATE CHECKED 選項的 SET INTEGRITY
語句,以消除表的「檢查暫掛」狀態。對於用戶維護的具體查詢表,執行帶
有 IMMEDIATE UNCHECKED 選項的語句,而不是帶 IMMEDIATE CHECKED
選項。
2 對表 "<表名>" 的從屬立即具體查詢表和分級表執行 REFRESH TABLE
語句。可以通過先前 LOAD INSERT 操作根據 "<表名>"
的追加數據以增量方式維護這些從屬立即具體化查詢表和分級表的內容。
3 通過分別發出帶有 RESTART 或 TERMINATER 選項的 LOAD
來重新啟動或終止先前失敗的對此表的 LOAD 操作。
4 發出 LOAD QUERY 命令以檢查該表是否正在裝入。如果是,則一直等到
LOAD 實用程序完成,或如有必要,重新啟動或終止先前失敗的「裝入」操作
。如果「裝入」當前未在進行,則發出帶有 IMMEDIATE CHECKED 選項的
SET INTEGRITY 命令以驗證表的新裝入部分中的約束。
5 一直等到當前 LOAD 操作完成。可用使用 LOAD QUERY
命令來監視裝入的進度。
6 使用 MAINTAIN BY USER
選項定義具體查詢表。然後,使用帶有子查詢的 INSERT
語句填充具體查詢表。

㈨ db2資料庫裡面的一張表被鎖定,怎麼解鎖

請教各位:DB2資料庫里如何判斷一個表被鎖

1、執行命令打開鎖的監視開光
UPDATE MONITOR SWITCHES USING lock on==>;>;
2、查看資料庫的鎖的情況
get snapshot for locks on tberp
3、某一個用戶的鎖的情況
get snapshot for application applid C0A8084A.040A.031015144751
4、如果表被鎖可以關閉該應用連接
force application ID1
5、看正在運行的程序有沒有處於鎖等待狀態的
list applications for db tberp show detail

㈩ db2 怎麼查死鎖.怎麼殺掉死鎖進程

C:\>db2 get snapshot for locks on js

資料庫鎖定快照

資料庫名稱 = JS
資料庫路徑 = D:\DB2\NODE0000\SQL00001\
輸入資料庫別名 = JS
掛起的鎖定 = 5
當前已連接的應用程序 = 1
當前正等待鎖定的代理程序數 = 0
快照時間戳記 = 2007-09-04 12:54:33.121513

應用程序句柄 = 10
應用程序標識 = *LOCAL.DB2.070904045330
序號 = 00001
應用程序名 = db2taskd
CONNECT 授權標識 = ADMINISTRATOR
應用程序狀態 = 連接已完成
狀態更改時間 = 未收集
應用程序代碼頁 = 1208
掛起的鎖定 = 0
總計等待時間(毫秒) = 未收集

應用程序句柄 = 9
應用程序標識 = *LOCAL.DB2.070904045329
序號 = 00001
應用程序名 = db2stmm
CONNECT 授權標識 = ADMINISTRATOR
應用程序狀態 = 連接已完成
狀態更改時間 = 未收集
應用程序代碼頁 = 1208
掛起的鎖定 = 0
總計等待時間(毫秒) = 未收集

應用程序句柄 = 8
應用程序標識 = *LOCAL.DB2.070904045327
序號 = 00011
應用程序名 = javaw.exe
CONNECT 授權標識 = ADMINISTRATOR
應用程序狀態 = UOW 正在等待
狀態更改時間 = 未收集
應用程序代碼頁 = 1208
掛起的鎖定 = 5
總計等待時間(毫秒) = 未收集

鎖定列表
鎖定名稱 = 0x020010000D0080080000000052
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 142606349
對象類型 = 行
表空間名 = USERSPACE1
表模式 = JS
表名 = US_CATALOG
方式 = X

鎖定名稱 = 0x02001000090080080000000052
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 142606345
對象類型 = 行
表空間名 = USERSPACE1
表模式 = JS
表名 = US_CATALOG
方式 = X

鎖定名稱 = 0x01000000010000000100EA0056
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 0
對象類型 = 內部變化鎖定
方式 = S

鎖定名稱 = 0x5359535348323030DDECEF2841
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 1
掛起計數 = 0
鎖定對象名 = 0
對象類型 = 內部方案鎖定
方式 = S

鎖定名稱 = 0x02001000000000000000000054
鎖定屬性 = 0x00000000
發行版標志 = 0x40000000
鎖定計數 = 2
掛起計數 = 0
鎖定對象名 = 16
對象類型 = 表
表空間名 = USERSPACE1
表模式 = JS
表名 = US_CATALOG
方式 = IX

C:\>db2 list applications

授權標識程序 應用程序名 應用程序句柄 應用程序標識 資料庫名稱 代理序號
------------ -------------- -------------- ------------------------ ------------- ----------
ADMINIST db2taskd 10 *LOCAL.DB2.070904045330 JS 1
ADMINIST db2stmm 9 *LOCAL.DB2.070904045329 JS 1
ADMINIST javaw.exe 8 *LOCAL.DB2.070904045327 JS 1

在snapshot的第四段顯示應用程序句柄為8的應用有鎖存在,在其相應的鎖定列表中顯示鎖定的表是US_CATALOG。
如果您確定是US_CATALOG表上發生了死鎖,可以通過命令db2 "force application(8)"來殺掉該應用在資料庫上
的連接。注意如果force命令導致該應用的事務回滾得話,force命令不能馬上斷開應用在資料庫上的連接,而是
要等到回滾完成後才能斷開該應用的資料庫連接。

C:\>db2 list applications show detail
//list applications for database cmsbj3 show detail

如果DB2在Window上,則可以使用「控制中心」->實例->右鍵「應用程序」,可以看到當前的鎖定情況,並且可以強行關閉某個進程,也可以顯示「鎖定鏈」。

1.DB2表鎖定怎麼解鎖

http://www.chinaunix.net/jh/22/20020.html

2.DB2中怎麼知道表的鎖定情況:

http://www.chinaunix.net/jh/22/16766.html

熱點內容
linux路由轉發 發布:2024-09-23 21:22:41 瀏覽:381
linux基金會成立 發布:2024-09-23 21:22:06 瀏覽:999
e的運演算法則 發布:2024-09-23 21:21:05 瀏覽:119
在同一路由器下如何訪問伺服器 發布:2024-09-23 20:55:41 瀏覽:556
天逸哪個配置帶電子擋桿 發布:2024-09-23 19:51:22 瀏覽:547
sqrt在c語言中什麼意思 發布:2024-09-23 19:50:04 瀏覽:507
京東羊毛伺服器搭建 發布:2024-09-23 19:33:39 瀏覽:9
伺服器的遠程埠被關了如何打開 發布:2024-09-23 18:33:22 瀏覽:230
phpjs注入 發布:2024-09-23 18:31:51 瀏覽:596
高性能php應用開發 發布:2024-09-23 18:23:56 瀏覽:209