Seata整合Nacos

本文档详细介绍了Seata服务端的配置步骤,包括启动脚本、数据库导入、Nacos注册中心配置以及数据库连接设置。同时,也阐述了客户端配置,如事务表的导入和YAML配置。整个过程旨在帮助读者成功部署和使用Seata分布式事务解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Seata

seata为独立的服务,files目录里含有server端及源码
seata-server.sh:Linux启动seata执行脚本
seata-server.bat:windows启动seata执行脚本

配置seata服务端

导入seata数据库

新建seata数据库(库名自定义),导入如下sql
sql文件路径(源码):seata-1.3.0/script/server/db/mysql.sql

配置nacos注册中心
修改seata-server-1.3.0/seata/conf/registry.conf ↓

registry {
  type = "nacos"

  nacos {
    application = "seata-server"
    serverAddr = "127.0.0.1:8848"
    group = "SEATA_GROUP"
    namespace = ""
    cluster = "default"
    username = ""
    password = ""
  }
  file {
    name = "file.conf"
  }
}

config {
  type = "nacos"

  nacos {
    serverAddr = "127.0.0.1:8848"
    namespace = ""
    group = "SEATA_GROUP"
    username = ""
    password = ""
  }
  
  file {
    name = "file.conf"
  }
}

配置数据库连接相关

复制txt文件至服务端的conf下
txt文件路径(源码):seata-1.3.0/script/config-center/config.txt
复制至(server端) -> seata-server-1.3.0/seata/conf/config.txt

# 修改为db模式
store.mode=db
# 如mysql8.0+,则修改为:com.mysql.cj.jdbc.Driver
store.db.driverClassName=com.mysql.jdbc.Driver
store.db.url=jdbc:mysql://127.0.0.1:3306/seata?useUnicode=true
store.db.user=username
store.db.password=password

配置sh脚本,将seata配置推送至nacos

1.复制sh执行文件至服务端的conf下
2.sh文件路径(源码):seata-1.3.0/script/config-center/nacos/nacos-config.sh
3.复制至(server端) -> seata-server-1.3.0/seata/conf/nacos-config.sh
4.86行添加conf:cat (dirname"(dirname "(dirname"PWD")/conf/config.txt
5.在conf目录下执行:sh nacos-config.sh -h 127.0.0.1 -p 8848
注:参数ip端口为nacos服务端地址,windows可安装git来执行sh命令

修改conf/file.conf

store {
  mode = "db"

  db {
    datasource = "druid"
    dbType = "mysql"
    # 如mysql8.0+,则修改为:com.mysql.cj.jdbc.Driver
    driverClassName = "com.mysql.jdbc.Driver"
    url = "jdbc:mysql://127.0.0.1:3306/seata"
    user = "mysql"
    password = "mysql"
    minConn = 5
    maxConn = 30
    globalTable = "global_table"
    branchTable = "branch_table"
    lockTable = "lock_table"
    queryLimit = 100
    maxWait = 5000
  }

}

配置seata客户端

所有微服务业务数据库均需要导入事务表
sql文件路径(源码):seata-1.3.0/script/client/at/db/mysql.sql

application.yml配置

seata:
  enabled: true
  tx-service-group: ${spring.application.name}
  enable-auto-data-source-proxy: true
  config:
    type: nacos
    nacos:
      namespace:
      server-addr: 127.0.0.1:8848
      group: SEATA_GROUP
  registry:
    type: nacos
    nacos:
      application: seata-server
      server-addr: 127.0.0.1:8848
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值