分布式事務處理

2021-09-05 16:00:41 字數 539 閱讀 4070

前提如下:

db_a,db_b為兩個資料庫

都有乙個person表

該錶兩個字段 personid(主鍵)和personname

下面的分布式事務 實現的是

同時向這兩個庫的兩個表新增資料

******************************=

set xact_abort on

-- 開始分布式事務

begin distributed  transaction

-- 操作 db_a資料庫的person表

insert into [db_a].[dbo].[person]([personid], [personname])

values('2', '張三')

-- 操作 db_b資料庫的person表

insert into [db_b].[dbo].[person]([personid], [personname])

values('1', '張三')

--提交事務

commit transaction

分布式事務處理

場景 a資料庫有乙個人叫小明,b資料庫有乙個人叫小花,現在小明要給小花轉賬100,那麼就有兩個操作,小明賬戶 100,小 花賬戶 100,由於是跨資料庫,事務在此時沒用,那該如何保證兩人賬戶資料的準確。方案一 兩次提交,設計理念 在同乙個資料庫中,我們可以使用事務來保證資料的原子性。現在我們有兩個資...

java 分布式事務處理

分布式事務處理 當資料分布在多個資料庫伺服器上時,就需要各種保護措施來保證資料正確地寫到所有資料庫中。例如,考慮乙個在三個分離的遠端資料庫上修改的 客戶帳戶平衡表,如果在事務寫階段,任何乙個資料庫連線失敗,資料庫之間就失去同步。怎樣檢測並更正這種情形呢?事務處理 tp 監示乙個叫做兩階段提交 的過程...

XA分布式事務處理

在談到 xa規範之前,必須首先了解分布式事務處理 distributed transaction processing dtp 的概念。transaction 即事務,又稱之為交易,指乙個程式或程式段,在乙個或多個資源如 資料庫 或檔案上為完成某些功能的執行過程的集合。分布式事務處理是指乙個事務可能...