由于我用nacos作為注冊(cè)中心侥袜,所有該文章以nacos為基礎(chǔ)進(jìn)行seata基礎(chǔ)配置虾标。nacso環(huán)境搭建此處不做過(guò)多講解。
配置文件說(shuō)明
解壓seata壓縮包后南吮,進(jìn)入conf文件夾下可以看到如下文件
registry.conf
registry.conf為seata的注冊(cè)文件花嘶。配置信息如下
file.conf
file.conf為配置文件笋籽。此處將file.conf的信息配置入nacos中,所有file.conf文件可以不做配置椭员。
但是需要將file中的信息配置入nacos车海,還需兩個(gè)文件config.txt,和nacos-config.sh下載地址見(jiàn)文末隘击。下載后將文件放入seata/conf目錄下侍芝。
config.txt
配置信息如下
載入seata配置到 nacos,運(yùn)行命令
sh nacos-config.sh -h 127.0.0.1 -t 5d304c31-67d5-479a-a064-6ad7d0c8
-h nacos ip
-t nacos命名空間
如果報(bào)找不到config.txt文件埋同,只需將config.txt文件移到上一級(jí)目錄即可州叠。成功后可以在nacos中查看到如下信息
導(dǎo)入seata所需的數(shù)據(jù)庫(kù)。并在每個(gè)服務(wù)的數(shù)據(jù)庫(kù)中導(dǎo)入undo_log表(見(jiàn)文末)凶赁。
https://github.com/seata/seata/blob/develop/script/server/db/mysql.sql
啟動(dòng)seata服務(wù)咧栗,成功后可在nacos中查看
啟動(dòng)seata: sh seata-server.sh -p 18091 -h 127.0.0.1 -m file
后臺(tái)啟動(dòng) :nohup ./seata-server.sh -p 18091 -h 127.0.0.1 -m file >nohup.out 2>1 &
-h seata ip
-p seata 端口
項(xiàng)目配置
SEATA成功后,將registry.conf拷貝到resource下虱肄。并配置bootstrap.yml致板。
此處service-group 配置需和config.txt中的vgroupMapping對(duì)應(yīng)(seata1.0之前為vgroup_mapping)
之后配置seata的pom文件,版本需要和服務(wù)器的一致咏窿。不然會(huì)報(bào)錯(cuò)斟或。
最后配置數(shù)據(jù)源代理,在啟動(dòng)項(xiàng)目即可集嵌。此處不做過(guò)多詳解萝挤。
可參考
config.txt 和nacos-config.sh下載地址
https://github.com/seata/seata/tree/develop/script/config-center
https://github.com/seata/seata/tree/develop/script/config-center/nacos
undo_log表
CREATE TABLE
undo_log
(
id
bigint(20) NOT NULL AUTO_INCREMENT,
branch_id
bigint(20) NOT NULL,
xid
varchar(100) NOT NULL,
context
varchar(128) NOT NULL,
rollback_info
longblob NOT NULL,
log_status
int(11) NOT NULL,
log_created
datetime NOT NULL,
log_modified
datetime NOT NULL,
ext
varchar(100) DEFAULT NULL,
PRIMARY KEY (id
),
UNIQUE KEYux_undo_log
(xid
,branch_id
)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;