目录
快来加入我们的互动学习群吧,与我们一起成长和进步吧! QQ交流群:948912943
进群下载配套安装包,无需考虑版本兼容等问题!!!
Linux安装Seata及其环境配置
官方地址:https://seata.apache.org/
下载地址:https://seata.apache.org/unversioned/download/seata-server
1.解压seata-server
unzip seata-server-1.4.2.zip
2.配置seata环境变量
export SEATA_SERVER_HOME=/home/environment/seata-server-1.4.2
export PATH=$SEATA_SERVER_HOME/bin:$PATH
3.修改registry.conf文件注册中心、配置中心为nacos
此处与Spring Boot的配置不一样,Spring Boot项目需要指定file.conf从里边读取信息,需要修改registry.conf和file.conf文件。
在Spring Cloud项目中,使用nacos作为配置中心和注册中心管理配置,只需修改registry.conf文件即可。
注意:确保client与server的注册处于同一个namespace和group,不然会找不到服务
在使用nacos配置中心时,最好新开一个namespace,与其他配置分离,防止数据混乱
4.配置seata-server信息
(1)通过dataId配置(Seata 1.4.2版本以后)
①从v1.4.2版本开始,已支持从一个Nacos dataId中获取所有配置信息,只需要额外添加一个dataId配置项
②需要在nacos新建配置,此处dataId为seataServer.properties,配置内容为刚修改好的config.txt内容
注意:需将内容中的空值注释掉
(2)配置信息同步到nacos(使用源码)
获取/seata源码/seata-1.4.2/script/config-center/config.txt,修改config.txt配置信息
unzip seata-1.4.2.zip
cd ./seata-1.4.2/script/config-center/
vim config.txt
配置事务分组,要与客户端配置的事务分组一致
客户端properties配置:
spring:
cloud:
alibaba:
seata:
tx:
tx-service-group: my_test_tx_group
# seata 分布式事务配置
seata:
enabled: true
# 使用的事务组
tx-service-group: infinite_tx_group
config:
type: nacos
nacos:
server-addr: node1:8848
namespace: 33d40ae0-b25e-4a7b-bf93-135027dff79b
group : SEATA_GROUP
dataId: seata-server.properties
username: nacos
password: nacos
registry:
type: nacos
nacos:
server-addr: node1:8848
namespace: 33d40ae0-b25e-4a7b-bf93-135027dff79b
group: SEATA_GROUP
username: nacos
password: nacos
application: seata-server
配置信息同步到nacos(nacos-config.sh)
config.txt文件的配置信息修改完毕后需要放入nacos配置中心,seata源码中已经提供了同步的脚本
在cmd窗口中执行shell脚本,会自动把config.txt文件的配置信息推送到nacos对应的namespace下
cd /seata-1.4.2/script/config-center/nacos
nacos-config.sh -h 127.0.0.1 -p 8848 -g SEATA_GROUP -t 33d40ae0-b25e-4a7b-bf93-135027dff79b -u nacos -w nacos
命令参数:
参数 | 命令 |
---|---|
-h | IP地址:默认值 localhost |
-p | 端口号:默认值 8848 |
-g | 配置分组:默认值为 SEATA_GROUP |
-t | 租户信息:对应 Nacos 的命名空间(namespace)ID字段,默认值为空 |
-u | 用户名,权限控制在的nacos 1.2.0+,默认值为空 |
-w | 密码,权限控制在的nacos 1.2.0+,默认值为空 |
5.创建seata数据库
在源码包的seata-1.4.2\script\server\db目录下,找到脚本文件,选择mysql.sql
6.启动
./seata-server.sh