1、會話可以建立多個事務
比如:使用客端連線資料庫,這樣你就可以執行很多個事務了
2、一個事務只能由一個會話產生
在資料庫裡的事務,如果在執行的SQL都是由會話發起的,哪怕是自動執行的JOB也是由系統會話發起的
3、一個事務可能會產生一個或多個執行緒
比如RMAN備份,是可以建立多個執行緒可加快備份速度
4、一個執行緒在同一時間內只能執行一個事務
而一個執行緒,在沒結束當前事務是無法釋放資源來執行第二個事務
事務、會話與執行緒的關係和區別
我一直沒弄明白資料庫中的這三個概念之間的關係。
事務:簡單理解局勢一個業務需求的最小處理單位。
如:從A銀行卡轉賬500元到B銀行卡,事務就包括兩部分,1、從A卡減掉500元 2、從B卡加上500元
這兩個部分只要一個部分出錯,就要整體“回滾”,那這就是一個事務
會話:可以包含N個事務
如:你登陸網銀之後,可以重複轉賬步驟2次,第二次轉賬失敗,並不影響你第一次轉賬成功。
執行緒:一個事情,一個人乾和多個人乾的問題
如:比如植樹,任務是植樹500棵,一個人(執行緒)幹5天,那五個人(執行緒)幹1天。
至於會話和執行緒的關係,個人理解,植樹任務就是一個session
一個會話中可以由多個事務。
執行緒是作業系統概念。
1、會話可以建立多個事務
比如:使用客端連線資料庫,這樣你就可以執行很多個事務了
2、一個事務只能由一個會話產生
在資料庫裡的事務,如果在執行的SQL都是由會話發起的,哪怕是自動執行的JOB也是由系統會話發起的
3、一個事務可能會產生一個或多個執行緒
比如RMAN備份,是可以建立多個執行緒可加快備份速度
4、一個執行緒在同一時間內只能執行一個事務
而一個執行緒,在沒結束當前事務是無法釋放資源來執行第二個事務
事務、會話與執行緒的關係和區別
我一直沒弄明白資料庫中的這三個概念之間的關係。
事務:簡單理解局勢一個業務需求的最小處理單位。
如:從A銀行卡轉賬500元到B銀行卡,事務就包括兩部分,1、從A卡減掉500元 2、從B卡加上500元
這兩個部分只要一個部分出錯,就要整體“回滾”,那這就是一個事務
會話:可以包含N個事務
如:你登陸網銀之後,可以重複轉賬步驟2次,第二次轉賬失敗,並不影響你第一次轉賬成功。
執行緒:一個事情,一個人乾和多個人乾的問題
如:比如植樹,任務是植樹500棵,一個人(執行緒)幹5天,那五個人(執行緒)幹1天。
至於會話和執行緒的關係,個人理解,植樹任務就是一個session
一個會話中可以由多個事務。
執行緒是作業系統概念。