mysql的xa協(xié)議如何開啟?
在XA事務(wù)中啟用InnoDB支持兩階段提交,導(dǎo)致額外的磁盤刷新事務(wù)準(zhǔn)備。
XA機制在內(nèi)部使用,對于其二進(jìn)制日志處于打開狀態(tài)且正在接受來自多個線程的數(shù)據(jù)更改的任何服務(wù)器而言,都是必不可少的。
如果您禁用了innodb_support_xa,那么事務(wù)可以以不同于實時數(shù)據(jù)庫提交的順序的方式寫入二進(jìn)制日志,當(dāng)二進(jìn)制日志在災(zāi)難恢復(fù)或復(fù)制從屬環(huán)境中重播時,這可能會產(chǎn)生不同的數(shù)據(jù)。
不要在復(fù)制主服務(wù)器上禁用innodb_support_xa,除非有異常的設(shè)置,只有一個線程可以更改數(shù)據(jù)。
對于僅從一個線程接受數(shù)據(jù)更改的服務(wù)器,這是安全的,建議禁用此選項以提高InnoDB表的性能。
例如,您可以在只有復(fù)制SQL線程正在更改數(shù)據(jù)的復(fù)制從服務(wù)器上將其關(guān)閉。