第10節(jié):重點(diǎn)Event UPDATE_ROWS_EVENT/XID_EVENT


一、UPDATE_ROWS_EVENT

(1)UPDATE_ROWS_EVENT 的作用

本Event是‘Update’語句生成的Event。主要用于記錄‘Update’語句的before_image實際數(shù)據(jù)和after_image實際數(shù)據(jù)。其中還包含table_id、映像位圖、字段數(shù)量、行數(shù)據(jù)位圖等信息。

(2)源碼重要接口(不關(guān)心源碼可以不理會)
主庫端
初始化構(gòu)造 Update_rows_log_event::Update_rows_log_event(THD *thd_arg, TABLE tbl_arg,const Table_id& tid,bool is_transactional,const uchar extra_row_info)
數(shù)據(jù)寫入函數(shù) Rows_log_event::do_add_row_data
寫入binlog cache Rows_log_event::write_data_header Rows_log_event::write_data_body
從庫端
讀取Event構(gòu)造 Update_rows_log_event::Update_rows_log_event(const char *buf, uintevent_len,const Format_description_event *description_event)
應(yīng)用 Rows_log_event::do_apply_event
(3)主體格式

因為本Event的格式更加復(fù)雜一些,因此我使用了更加豐富的原色來區(qū)別如下(圖10-1):

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
支付 ¥1.50 繼續(xù)閱讀

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容