一.集成nacos步骤
1.配置项更改
1.1nacos更改的文件
更改nacos地址和数据库地址(现在更改数据库就行)
1.2更改seata数据库连接方式
1.3更改nacos地址
头部的
尾部的
1.4执行nacos-config.sh 配置项导入到那cos
成功验证
- 启动seata
命令:nohup ./seata-server.sh -h 127.0.0.1 -p 8092 &
二.项目集成步骤()
1.第一步加入架包
<!--SpringCloudAlibaba的seata分布式事务管理-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-seata</artifactId>
<version>2.2.0.RELEASE</version>
<exclusions>
<exclusion>
<groupId>io.seata</groupId>
<artifactId>seata-all</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>io.seata</groupId>
<artifactId>seata-all</artifactId>
<version>1.2.0</version>
</dependency>
- 第二步启动项加入
@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)
@Bean
@ConfigurationProperties(prefix = "spring.datasource.druid")
public DataSource druidDataSource(){
DruidDataSource druidDataSource = new DruidDataSource();
return druidDataSource;
}
@Primary
@Bean("dataSource")
public DataSourceProxy dataSource(DataSource druidDataSource){
return new DataSourceProxy(druidDataSource);
}
- 去掉service注解
@Transactional
- 方法上加注解
@GlobalTransactional(name = "default",rollbackFor = Exception.class)
- bootstarp.yml加入
seata:
enabled: true
application-id: ${spring.application.name}
tx-service-group: prex_tx_group
enable-auto-data-source-proxy: true
service:
vgroup-mapping:
prex_tx_group: default # my_test_tx_group是自定义的事务分组名称
config:
type: nacos
nacos:
namespace: "fa2685e4-080c-48bc-a38a-5749ee624cbb"
serverAddr: ${spring.cloud.nacos.discovery.server-addr}
group: SEATA_GROUP
userName: "nacos"
password: "zk789852"
registry:
type: nacos
nacos:
application: seata-server
server-addr: ${spring.cloud.nacos.discovery.server-addr}
namespace: "fa2685e4-080c-48bc-a38a-5749ee624cbb"
userName: "nacos"
password: "zk789852"