seata服务器集群搭建

搭建seata-server-1.3服务器对应SpringBoot2.3.12,springcloud2.2.3

<spring-cloud-alibaba.version>2.2.3.RELEASE</spring-cloud-alibaba.version>

首先你安装了nacos

1解压文件

2修改cong/file.conf

让seata集群信息可以共享,我们应该修改它的保存位置: 默认保存在本地文件。 可以让seata集群保存到mysql数据库

url?之后写个时区就行不用写编码方式

如果你的mysql数据库是8.0的话

把mysql-connector-java-8.0.19.jar这个jar包从jdbc文件夹拿出来,放到上一级的文件夹lib包下

3创建数据库并导入表结构

-- -------------------------------- 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;

4指定seata的注册中心地址和配置中心的内容

目录可以让微服务调用到seata的集群。conf/registry.conf

需要把哪些配置项放入nacos配置中心呢!

使用nacos/nacos-config.sh 把配置信息放入nacos配置中心

点击右键--git界面----> ./nacos-config.sh

首先是你得下的有git,nacos

如果想人为指定nacos配置中心的地址

5启动seata服务器

注意: 启动seata服务器前,必须启动nacos

6配置微服务客户端

(1)在每个数据库中创建unlog表.

日志表:记录着数据提交的内容。当出现异常 应该回滚到日志记录的内容。

-- for AT mode you must to init this sql for you business database. the seata server not need it.
CREATE TABLE IF NOT EXISTS `undo_log`
(`branch_id`     BIGINT(20)   NOT NULL COMMENT 'branch transaction id',`xid`           VARCHAR(100) NOT NULL COMMENT 'global transaction id',`context`       VARCHAR(128) NOT NULL COMMENT 'undo_log context,such as serialization',`rollback_info` LONGBLOB     NOT NULL COMMENT 'rollback info',`log_status`    INT(11)      NOT NULL COMMENT '0:normal status,1:defense status',`log_created`   DATETIME(6)  NOT NULL COMMENT 'create datetime',`log_modified`  DATETIME(6)  NOT NULL COMMENT 'modify datetime',UNIQUE KEY `ux_undo_log` (`xid`, `branch_id`)
) ENGINE = InnoDBAUTO_INCREMENT = 1DEFAULT CHARSET = utf8 COMMENT ='AT transaction mode undo table';

(2)添加依赖

在每个微服务中添加seata依赖

        <!--seata 一定要保证和seata服务的版本匹配--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-seata</artifactId></dependency>

(3)修改yaml配置文件

修改每个微服务的配置文件

server:port: 8001spring:application:name: seata-order
# 数据源datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/seata_order?serverTimezone=Asia/Shanghaiusername: rootpassword: 1111
# 把该服务注册到nacos上cloud:nacos:discovery:server-addr: localhost:8848alibaba:seata:tx-service-group: aaa
# 配置mybatis映射文件的路径
mybatis:mapperLocations: classpath:mapper/*.xml
# 显示mybatis执行的sql语句
logging:level:com.ykq.dao: debug#指定seata服务器在nacos的注册中心的地址
seata:registry:type: nacosnacos:#指定seata服务器所在的注册中心的地址server-addr: localhost:8848username: nacospassword: nacos#指定seata服务在注册中心的组名,默认为SEATA_GROUPgroup: SEATA_GROUP#指定deata服务器在注册中心的服务名称 默认seata-serverapplication: seata-serverconfig:type: nacosnacos:server-addr: localhost:8848username: nacospassword: nacosgroup: SEATA_GROUP

注意:MySQL的驱动名称如果为8.0一定要为com.mysql.cj.jdbc.Driver.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/513843.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue.js+SpringBoot开发高校学院网站

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 学院院系模块2.2 竞赛报名模块2.3 教育教学模块2.4 招生就业模块2.5 实时信息模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 学院院系表3.2.2 竞赛报名表3.2.3 教育教学表3.2.4 招生就业表3.2.5 实时信息表 四、系…

JAVA中YML:几个用法

项目有一些配置文件&#xff0c;ini、prop类型的配置文件都考虑过后&#xff0c;还是选择yml文件&#xff0c;如上图&#xff1a;xxconfig.yml。 要求&#xff1a; 1、允许实施人员手动配置 2、配置文件要能轻便的转化为一个JAVA对象 3、程序启动后&#xff0c;打印这些配置项&…

teknoparrot命令行启动游戏

官方github cd 到teknoparrot解压目录 cd /d E:\mn\TeknoParrot2_cp1\GameProfiles启动游戏 TeknoParrotUi.exe --profile游戏配置文件游戏配置文件位置/UserProfiles,如果UserProfiles文件夹里没有那就在/GameProfiles,在配置文件里将游戏路径加入之间,或者打开模拟器设置 …

空间直角坐标系、大地坐标系、平面坐标系介绍

空间直角坐标系、大地坐标系、平面坐标系 2017-04-11 13:53 ( 一)空间直角坐标系 空间直角坐标系的坐标原点位于参考椭球的中心,Z轴指向参考椭球的北极,X轴指向起始子午面与赤道的交点,Y轴位于赤道面上切按右手系于X轴呈90度夹角,某点中的坐标可用该点在此坐标系的各…

redis02 安装

官网下载 传送门https://redis.io/download/#redis-downloads 安装Redis mac m1安装 下载你需要版本的软件包放到指定的目录下进行解压 cd 到解压好的redis目录 运行下面的命令进行编译测试 sudo make test 中途可能会提示你安装make工具&#xff0c;按提示安装即可&…

NTFS Disk by Omi NTFS for mac v1.1.4中文版

NTFS Disk by Omi NTFS for Mac&#xff1a;NTFS文件系统的无缝桥梁 软件下载&#xff1a;NTFS Disk by Omi NTFS for mac v1.1.4中文版 &#x1f310; 跨平台访问&#xff0c;文件无阻 NTFS Disk by Omi NTFS for Mac 为您的Mac提供了对NTFS文件系统的无缝访问。无论您是在Win…

JavaWeb - 2 - HTML、CSS

什么是HTML、CSS&#xff1f; HTML&#xff08;HyperText Markup Language&#xff09;&#xff1a;超文本标记语言 超文本&#xff1a;超越了文本的限制&#xff0c;比普通文本更强大&#xff0c;除了文字信息&#xff0c;还可以定义图片、音频、视频等内容 标记语言&…

【DIY】钱包的“电子卫士”的制作

一、工作原理 钱包的“电子卫士”电路如图1所示&#xff0c;其核心元件是微型蜂鸣器专用音响集成电路A&#xff0c;它与压电陶瓷蜂鸣片B、电池G等组成了一个体积小巧、发声响亮的简易蜂鸣器。 平时&#xff0c;钱包通过尼龙线与插头XP相接&#xff0c;而XP插入插孔XS内&#x…

【深度学习】知识点归纳总结-for 面试【自用】

add 和 concat的区别 特征add的时候就是增加特征的信息量&#xff0c;特征concat的时候就是增加特征的数量&#xff0c;注重细节的时候使用add&#xff0c;注重特征数量的时候使用concat&#xff0c; resnet用的add densenet用的concat RNN应用 一、关键字提取&#xff08;…

如何计算搭建光伏电站需要多少成本?

光伏电站&#xff0c;又称太阳能电站&#xff0c;是一种利用太阳能发电的电力系统。随着全球对可再生能源的需求日益增加&#xff0c;光伏电站的建设变得越来越普遍。然而&#xff0c;在投资光伏电站之前&#xff0c;了解其建设成本是非常重要的。本文将介绍如何计算搭建光伏电…

CSS字体样式的使用,下载量瞬秒百万

CSS简介 CSS是层叠样式表&#xff08;Cascading Style Sheets&#xff09;的简称。 作用&#xff1a; 用于HTML文档中元素的样式定义实现内容&#xff08;html元素&#xff09;与表现&#xff08;css样式&#xff09;的分离实现代码的可重用性和可维护性 CSS主要部分&#…

【bug日记】已解决:Invalid bound statement (not found): 找不到对应的Mapper映射类

急着解决问题的哥们直接用目录跳到下文哈 我放传送门了 目录 试错 尝试过确认的东西&#xff1a; 最终解决方案&#xff01;已经完美解决&#xff1a; 只需要在你配置数据源的地方&#xff1a; 更改为&#xff1a; MybatisSqlSessionFactoryBean sessionFactory …