seata集群搭建

一、安装包下载

上一节,我们讲了ncos集群搭建,有不懂的可以看这篇文章,进入 Nacos集群环境搭建
说明:seata集群搭建,持久化我们用数据库的方式,所有需要下载安装包,以及源码包,后面会使用源码包中的脚本注册到nacos,
nacos,我们用的是1.4.1版本,注意版本号
安装包:seata-server-1.4.0.zip
下载地址:https://github-releases.githubusercontent.com/163387337/2f8cdf80-75f9-11eb-9430-a1a00a5d31b4?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20210804%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20210804T013525Z&X-Amz-Expires=300&X-Amz-Signature=faf7937642264c7b9bccfee570e4a974cb69aeaf359518fed18e9c9fe44c2429&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=163387337&response-content-disposition=attachment%3B filename%3Dseata-server-1.4.0.zip&response-content-type=application%2Foctet-stream
源码包:seata-1.4.0.zip
下载地址:https://codeload.github.com/seata/seata/zip/refs/heads/1.4.0

二、Seata安装(本栏目是在服务器上操作)

1、我们准备了三台服务器进行安装,三台服务器配配置一样,安装环境是centos7.7
2、将seata-server-1.4.0.zip包上传到服务器/data/目录,这里,我们将seata注册到nacos,修改registry.conf配置文件,

cd /data
unzip seata-server-1.4.0.zip
mv seata seata-server-1.4.0
cd seata-server-1.4.0/conf
vi registry.conf

关键配置如下:

registry {
  # file 、nacos 、eureka、redis、zk、consul、etcd3、sofa
  type = "nacos"
  loadBalance = "RandomLoadBalance"
  loadBalanceVirtualNodes = 10
  nacos {
    application = "seata-server"
    serverAddr = "server10:8888"
    group = "SEATA_GROUP"
    namespace = "9f45e490-5f0f-4974-8c69-e06493d5ca40"
    username = "nacos"
    password = "nacos"
  }
}
config {
  # file、nacos 、apollo、zk、consul、etcd3
  type = "nacos"
  nacos {
    application = "seata-server"
    serverAddr = "server10:8888"
    namespace = "9f45e490-5f0f-4974-8c69-e06493d5ca40"
    group = "SEATA_GROUP"
    username = "nacos"
    password = "nacos"
  }
}

说明:server10:8888,是因为nacos,我们用了nginx做了负载均,nacos有三台服务器,从一个端口进入,如果你只有一台nacos服务,就配ip:8848就可以了

3、修改配置文件file.conf,配置将数据持久化到数据库(如果使用nacos当配置中心,此文件就不会起作用,可不修改,后面会讲,我在安装时,也一起配置了,也就没有去测试,不配file.conf此文件)

store {
  ## store mode: file、db、redis
  mode = "db"
  ## database store property
  db {
    ## the implement of javax.sql.DataSource, such as DruidDataSource(druid)/BasicDataSource(dbcp)/HikariDataSource(hikari) etc.
    datasource = "druid"
    ## mysql/oracle/postgresql/h2/oceanbase etc.
    dbType = "mysql"
    driverClassName = "com.mysql.jdbc.Driver"
    url = "jdbc:mysql://server04:4000/seata"
    user = "seata"
    password = "seata123456"
    minConn = 5
    maxConn = 100
    globalTable = "global_table"
    branchTable = "branch_table"
    lockTable = "lock_table"
    queryLimit = 100
    maxWait = 5000
  }
}
三、mysql数据库数据导入(本栏目均在windows电脑上操作)

1、mysql数据库导入seata表结构等数据,mysql数据库里面建数据库名为seata的数据库,请自行创建

2、打开源码包seata-1.4.0.zip,截图如下:
在这里插入图片描述
3、打开script\server\db\mysql.sql,导入到mysql的seata数据库,即可
4、在自己项目中,要使用事务的业务数据库需要建undo_log表,建表语句在script\client\at\db\mysql.sql

四、nacos配置中心导入数据(本栏目均在windows电脑上操作)

1、在源码包seata-1.4.0.zip的中的script\config-center目录下,将【config.txt】文件和【nacos】文件夹复制到windos电脑的D:\盘,方便后面用命令导入nacos
2、修改config.txt

store.mode=db
store.db.datasource=druid
store.db.dbType=mysql
store.db.driverClassName=com.mysql.jdbc.Driver
store.db.url=jdbc:mysql://server04:4000/seata?useUnicode=true
store.db.user=seata
store.db.password=seata123456

3、进入nacos,创建命名空间
在这里插入图片描述

4、本地安装git(在此就是说明git是如何安装的,我们只用git里面的bash.exe工具),我的git安装路径在 D:\Program Files\Git\bin
,打开cmd命令控制(windows的命令控制台),进入D:\Program Files\Git\bin目录

d:
cd D:\Program Files\Git\bin
bash.exe
cd d:/
ls -l
cd nacos
ls
sh nacos-config.sh -h 192.168.100.23 -p 8848 -t 9f45e490-5f0f-4974-8c69-e06493d5ca40 -u nacos -w nacos

命令参数说明:
-h nacos的地址
p nacos的 端口
-t nacos 的namespace命名空间id
-u nacos用户名
-w nacos密码
在这里插入图片描述
4、登陆nacos查看是否导入成功
在这里插入图片描述

五、启动seata服务(本栏目在服务器上操作)

1、进入/data/seata-1.4.0目录,创建启动脚本,时间长了,会忘记

cd /data/seata-1.4.0
vi mystart.sh

关键配置

nohup sh /data/seata-1.4.0/bin/seata-server.sh -h 116.63.162.150 >/data/seata-1.4.0/logs/seata.log >&1 &
tail -f /data/seata-1.4.0/logs/seata.log

2,启动

sh mystart.sh
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值