springcloud seata nacos环境搭建

摘要:
最近,我了解了seata。由于nacos的流行,我学会了seata向nacos注册,然后集成了springcloud1.nacos配置(从官方网站下载)以导入nacos/conf/nacos-mysql。sql到我的数据库中。2.nacos/conf/application的配置修改。属性。春天数据源。平台=mysql2db。num=13db。我们的

最近学习了一下seata,由于nacos现在也挺火,于是学习了seata注册到nacos,然后集成springcloud

1.nacos配置(自行上官网下载)

将nacos/conf/nacos-mysql.sql导入自己的数据库

2.配置修改nacos/conf/application.properties

1 spring.datasource.platform=mysql
2 db.num=1
3 db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
4 db.user=root
5 db.password=123456
View Code

3.启动nacos

windows直接双击startup.cmd

linux不要直接sh startup.sh 加入参数 -m standalone或者改startup.sh -m参数,linux脚本默认集群启动,不改参数也不加启动参数会报错

springcloud seata nacos环境搭建第1张

启动成功

4.下载seata,建议直接下载源码编译

mvn -Prelease-all -DskipTests clean install -U

5.使用db模式导入配置

springcloud seata nacos环境搭建第2张

上面是源码目录,mysql.sql为seata库必须的表,执行sql即可

springcloud seata nacos环境搭建第3张

将上面的config.txt文件复制到seata目录,nacos中的nacos-config.shnacos-config.py复制到seata的conf目录

springcloud seata nacos环境搭建第4张

git 命令框执行 sh nacos-config.sh hostip 即可,位置为什么这样自己看下脚本就知道了

springcloud seata nacos环境搭建第5张

配置都进来了,注意上面的红框,如果你网上搜的脚本导入的,seata是1.0及之前的版本上面是对的,如果1.1及最新的源码改成vgroupMapping了,报错参考另一篇博客

5.修改seata配置

修改file.conf

1 service {
2 #transaction service group mapping
3     vgroupMapping.my_tx_group="default" #此处根据自己的情况修改
4     default.grouplist="127.0.0.1:8091"
5     disableGlobalTransaction=false
6 }
7 ## transaction log store, only used in seata-server
8 store {
9 ## store mode: file、db
10   mode = "db"
11 
12 ## file store property
13 file {
14 ## store location dir
15     dir = "sessionStore"
16     # branch session size , if exceeded first try compress lockkey, still exceeded throwsexceptions
17     maxBranchSessionSize = 16384
18     # globe session size , if exceeded throwsexceptions
19     maxGlobalSessionSize = 512
20     # file buffer size , if exceeded allocate newbuffer
21     fileWriteBufferCacheSize = 16384
22 # when recover batch read size
23     sessionReloadReadSize = 100
24 # async, sync
25     flushDiskMode =async
26 }
27 
28 ## database store property
29 db {
30     ## the implement of javax.sql.DataSource, such as DruidDataSource(druid)/BasicDataSource(dbcp) etc.
31     datasource = "druid"
32     ## mysql/oracle/h2/oceanbase etc.
33     dbType = "mysql"
34     driverClassName = "com.mysql.jdbc.Driver" #不要用mysql8的驱动,否则报错
35     url = "jdbc:mysql://127.0.0.1:3306/seata"
36     user = "root"
37     password = "123456"
38     minConn = 1
39     maxConn = 10
40     globalTable = "global_table"
41     branchTable = "branch_table"
42     lockTable = "lock_table"
43     queryLimit = 100
44 }
45 }

registry.conf

registry {
  # file 、nacos 、eureka、redis、zk、consul、etcd3、sofa
  type = "nacos"
  nacos {
    serverAddr = "localhost:8848"namespace = ""cluster = "default"}


}

config {
  # file、nacos 、apollo、zk、consul、etcd3
  type = "nacos"
  nacos {
    serverAddr = "localhost"namespace = ""group = "SEATA_GROUP"}
 

}

然后将上面两个配置文件复制到你的springcloud模块中

6.启动seata

springcloud seata nacos环境搭建第6张

如果之前在其他ip启动过,将file_store/data下的文件清掉,不然会报错

7.springcloud代码

去https://gitee.com/code_fun/example.git 把demo.zip下载跑就可以了,前提是建好数据库哦

demo.sql有表结构,undo_log表每个库都要有

如果上面demo.zip跑不通请移步https://gitee.com/sharehappy/learn/tree/master/springcloud_seata下载代码或者进群:513650703讨论

免责声明:文章转载自《springcloud seata nacos环境搭建》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇CSS3动画的使用以及优化DATAX 实现java调用cmd 系统控制台,实现在开发工具中内嵌datax下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

BAT教程 第三节(FOR命令中的变量)

FOR命令中有一些变量,许多新手朋友不太了解它们的用法。今天,我将向您解释它们的用法!让我们看看这个例子:首先,我们创建一个名为temp Txt文本文件的桌面,输入这些内容“11112222”“3333”44“44”,然后创建一个BAT文件,代码如下:FOR/F“delims=”%%iINDO@echo%%~执行ipause后,我们可以看到CMD echo如...

PostGIS拓扑:pgRouting最短路径分析

由于我们没有创建topo所需要的所有字段,有部分是用现有字段替代的,因此,在调用最短路径分析函数时,需在sql中显示指定这些字段。...

springsession生成sessionid不一致问题解决

毫无疑问,我遇到的主要问题是两个不同版本的spring boot,需要共享sessionid。...

eventUtil

}elseif(element.attachEvent){element.aattchEvent('on'+类型,}else{element['on'+type]=处理程序;}else{element['on'+类型]=null;函数(事件){returnevent.type;}否则{event.returnValue=false;...

解决xcode打开时loading假死的问题

出现这个问题就真得崩溃了,有些小伙伴甚至还重装了Xcode,这里给大家推荐一个行之有效的方法。...

js Base64与字符串互转

1、base64加密在页面中引入base64.js文件,调用方法为:˂!...