当前位置: 首页 > news >正文

三天学会阿里分布式事务框架Seata-seata事务日志mysql持久化配置

锋哥原创的分布式事务框架Seata视频教程:

实战阿里分布式事务框架Seata视频教程(无废话,通俗易懂版)_哔哩哔哩_bilibili实战阿里分布式事务框架Seata视频教程(无废话,通俗易懂版)共计10条视频,包括:1 阿里分布式事务框架Seata简介、2 分布式事务简介、3 SpringCloud Alibaba分布式基础案例搭建等,UP主更多精彩视频,请关注UP账号。icon-default.png?t=N7T8https://www.bilibili.com/video/BV1Uf4y1579F/seata默认事务支持是file文件存储,不怎么好,不方便查看和管理;所以我们一般是db存储;

修改conf下的file.conf配置文件

把mode改成"db",

然后下方mysql配置改成你们对应的配置即可,数据库要自己先建立,比如我这边定义是db_seata

还有三个表,global_table,branch_table,lock_table分别是全局事务会话表,分支事务会话表,锁数据表;

建表语句获取:https://gitee.com/dhb414/seata/blob/master/script/server/db/mysql.sql#

-- -------------------------------- The script used when storeMode is 'db' --------------------------------
-- the table to store GlobalSession data
CREATE TABLE IF NOT EXISTS `global_table`
(`xid`                       VARCHAR(128) NOT NULL,`transaction_id`            BIGINT,`status`                    TINYINT      NOT NULL,`application_id`            VARCHAR(32),`transaction_service_group` VARCHAR(32),`transaction_name`          VARCHAR(128),`timeout`                   INT,`begin_time`                BIGINT,`application_data`          VARCHAR(2000),`gmt_create`                DATETIME,`gmt_modified`              DATETIME,PRIMARY KEY (`xid`),KEY `idx_gmt_modified_status` (`gmt_modified`, `status`),KEY `idx_transaction_id` (`transaction_id`)
) ENGINE = InnoDBDEFAULT CHARSET = utf8;-- the table to store BranchSession data
CREATE TABLE IF NOT EXISTS `branch_table`
(`branch_id`         BIGINT       NOT NULL,`xid`               VARCHAR(128) NOT NULL,`transaction_id`    BIGINT,`resource_group_id` VARCHAR(32),`resource_id`       VARCHAR(256),`branch_type`       VARCHAR(8),`status`            TINYINT,`client_id`         VARCHAR(64),`application_data`  VARCHAR(2000),`gmt_create`        DATETIME(6),`gmt_modified`      DATETIME(6),PRIMARY KEY (`branch_id`),KEY `idx_xid` (`xid`)
) ENGINE = InnoDBDEFAULT CHARSET = utf8;-- the table to store lock data
CREATE TABLE IF NOT EXISTS `lock_table`
(`row_key`        VARCHAR(128) NOT NULL,`xid`            VARCHAR(96),`transaction_id` BIGINT,`branch_id`      BIGINT       NOT NULL,`resource_id`    VARCHAR(256),`table_name`     VARCHAR(32),`pk`             VARCHAR(36),`gmt_create`     DATETIME,`gmt_modified`   DATETIME,PRIMARY KEY (`row_key`),KEY `idx_branch_id` (`branch_id`)
) ENGINE = InnoDBDEFAULT CHARSET = utf8;

因为都是临时数据,最终提交事务会被清理,我们要看数据的话,还是需要服务代码里打断点,debug进行捕获;

下面这个是锋哥捕获到的一个数据;

http://www.lryc.cn/news/313085.html

相关文章:

  • C语言-简单实现单片机中的malloc示例
  • 外包干了2年,技术退步明显
  • 计算机网络面经-HTTPS加密过程
  • 2024年最佳硬盘!为台式电脑、NAS等产品量身定做的顶级机械硬盘
  • 串的匹配算法——BF算法(朴素查找算法)
  • 数据处理分类、数据仓库产生原因
  • 【力扣100】 118.杨辉三角
  • 好物周刊#44:现代终端工具
  • 每日五道java面试题之springMVC篇(一)
  • 【GStreamer】basic-tutorial-4:媒体播放状态、跳转seek操作
  • IPSEC VPN 网关模式实验
  • 想在Vue中使用v-for来循环遍历一组对象,但只循环三次
  • Blazor系统教程(.net8)
  • Day15:技术架构、Maven、Spring Initializer、Spring全家桶、Spring IoC
  • [c/c++] const
  • 生成商品条码
  • langchain学习笔记(十一)
  • LabVIEW高温摩擦磨损测试系统
  • 基于YOLOv5的驾驶员疲劳驾驶行为​​​​​​​检测系统
  • 融合软硬件串流多媒体技术的远程控制方案
  • Spring中的数据校验---JSR303
  • “揭秘网络握手与挥别:TCP三次握手和四次挥手全解析“
  • Java开发工程师面试题(Spring)
  • 【C++】string类的基础操作
  • Java项目:40 springboot月度员工绩效考核管理系统009
  • opengl 学习(三)-----着色器
  • 电销平台架构的演变与升级
  • 轻薄蓝牙工牌室内人员定位应用
  • 好物周刊#46:在线工具箱
  • 20240306-1-大数据的几个面试题目