1.下载seata
官网下载地址:http://seata.io/zh-cn/blog/download.html
或者下载 作者已经下载的压缩包1.4.0
注意!!!
要参考对应的版本,否则可能出现无法正常启动的情况。
参考文档
下载完毕后解压压缩文件
2.修改配置
2.1.registry.conf
文件
该文件决定了服务端的注册和配置方式。本文选用将服务注册到nacos
,并从nacos
上读取配置,需要修改registry.type和config.type为nacos,并填写nacos对应的连接方式。
如果配置从nacos
上读取配置,file.conf可以不用配置。
使用nacos
时也要注意group要和seata server中的group一致。
如果选用了nacos,就需要利用config.txt文件将配置导入nacos中。
可以在官网的 config-center目录下载
设置mode为db,并填写所用的MySQL数据库的连接方式。
注意!!!设置事务分组service.vgroupMapping.my_test_tx_group=default
并修改执行脚本,连接到nacos(此处以nacos-config.py为例),执行脚本将配置传入nacos中。
2.2.file.conf
文件
选择服务端存储模式(store.mode),其支持三种方式:
file
:单机模式(默认为此模式),全局事务会话信息存储在内存中,读写并持久化至本地文件 root.data (bin\sessionStore\root.data) 中,性能较高。
db
:高可用模式(Mysql 5.7+),全局事务会话信息通过db共享,相应性能差些。
redis
:Seata-Server 1.3及以上版本支持,性能较高,但存在事务信息丢失风险,请提前配置适合当前场景的redis持久化配置。
如果也选用db
模式,类似的,需要设置mode为db,并填写所用的MySQL数据库的连接方式
3.数据库建表
在前面file的配置里面数据库需要三张表(globalTable, branchTable, lockTable),这三张表在1.4.0这个版本下面它没有提供,需要去找sql文件
可以在官网的server目录下载
mysql.sql就是这三张表的DDL,我们直接在导入mysql数据库就可以
此外,还需要在客户端的业每个数据库里面生成一个undo表,作为在执行事务的过程中需要用到的表
可以在官网的client/at目录下载
4.启动!
单体环境:双击 seata-server.bat 或执行 seata-server.sh即可