service {#transaction service group mappingvgroup_mapping.my_test_tx_group ="rentao_tx_group"#only support when registry.type=file, please don't set multiple addressesdefault.grouplist ="127.0.0.1:8091"#disable seatadisableGlobalTransaction =false }
store 事务日志保存位置修改
## transaction log store, only used in seata-server store {## store mode: file 文件储存、db 数据库存储mode ="db"## file store propertyfile {## store location dirdir ="sessionStore"}## database store propertydb {## the implement of javax.sql.DataSource, such as DruidDataSource(druid)/BasicDataSource(dbcp) etc.datasource ="dbcp"## mysql/oracle/h2/oceanbase etc.db-type ="mysql"driver-class-name ="com.mysql.jdbc.Driver"## mysql/oracle/h2/oceanbase etc. 配置自己的数据库信息url ="jdbc:mysql://127.0.0.1:3306/seata"user ="root"password ="password"} }
创建数据库,导入结构
创建 seata 库:执行以下 CREATE DATABASE seata; -- the table tostoreGlobalSession data drop table if exists `global_table`; #TM create table `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`) );-- the table tostoreBranchSession data drop table if exists `branch_table`; #RM create table `branch_table` (`branch_id` bigint not null,`xid` varchar(128) not null,`transaction_id` bigint ,`resource_group_id` varchar(32),`resource_id` varchar(256),`lock_key` varchar(128),`branch_type` varchar(8),`status` tinyint,`client_id` varchar(64),`application_data` varchar(2000),`gmt_create` datetime,`gmt_modified` datetime,primary key (`branch_id`),key `idx_xid` (`xid`) );-- the table tostore lock data drop table if exists `lock_table`; create table `lock_table` (`row_key` varchar(128) not null,`xid` varchar(96),`transaction_id` long,`branch_id` long,`resource_id` varchar(256),`table_name` varchar(32),`pk` varchar(36),`gmt_create` datetime ,`gmt_modified` datetime,primary key(`row_key`) );
-- the table tostore seata xid data --0.7.0+ add context -- you must toinitthis sql for you business databese. the seata server not need it. -- 此脚本必须初始化在你当前的业务数据库中,用于AT 模式XID记录。与server端无关(注:业务数据库) -- 注意此处0.3.0+ 增加唯一索引 ux_undo_log drop table `undo_log`; CREATE TABLE `undo_log` (`id` bigint(20) NOT NULL AUTO_INCREMENT,`branch_id` bigint(20)NOT NULL,`xid` varchar(100)NOT NULL,`context` varchar(128)NOT NULL,`rollback_info` longblob NOT NULL,`log_status` int(11)NOT NULL,`log_created` datetime NOT NULL,`log_modified` datetime NOT NULL,`ext` varchar(100)DEFAULT NULL,PRIMARY KEY (`id`),UNIQUE KEY `ux_undo_log` (`xid`,`branch_id`) ) ENGINE=InnoDB AUTO_INCREMENT=1DEFAULT CHARSET=utf8;