Seata-1.4.2版本安装及注意事项

Seata-1.4.2版本安装及注意事项,第1张

Seata-1.4.2版本安装及注意事项

文章目录
  • 1.下载Nacos
  • 2.下载seata
  • 3.解压seata
  • 4.mysql数据库新建库seata库
  • 5.seata库建表
  • 6.修改file.conf配置
  • 7.修改registry.conf配置
  • 8.修改config.txt文件
  • 9.启动seata-server

1.下载Nacos

Nacos下载地址:https://github.com/alibaba/nacos/releases

启动Nacos,创建一个seata的命名空间

2.下载seata

下载seata-server-1.4.2版本

Seata下载地址:https://github.com/seata/seata/releases/download/v1.4.2/seata-server-1.4.2.zip

这里需要下载seata-server-1.4.2.zip、Source code两个包,如果源码包下载不下来也没关系,可以从源码里直接拷贝代码,我就死活下载失败。

3.解压seata

解压seata-server-1.4.2.zip到指定目录

4.mysql数据库新建库seata库

这个略,本人用的mysql8.0.23版本数据库

5.seata库建表

建表语句:https://github.com/seata/seata/blob/develop/script/server/db/mysql.sql

这里一定要先在mysql里建表!!!!我把建表语句贴了出来

CREATE TABLE IF NOT EXISTS `global_table`
(
    `xid`                       VARCHAr(128) NOT NULL,
    `transaction_id`            BIGINT,
    `status`                    TINYINT      NOT NULL,
    `application_id`            VARCHAr(32),
    `transaction_service_group` VARCHAr(32),
    `transaction_name`          VARCHAr(128),
    `timeout`                   INT,
    `begin_time`                BIGINT,
    `application_data`          VARCHAr(2000),
    `gmt_create`                DATETIME,
    `gmt_modified`              DATETIME,
    PRIMARY KEY (`xid`),
    KEY `idx_gmt_modified_status` (`gmt_modified`, `status`),
    KEY `idx_transaction_id` (`transaction_id`)
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8;

-- the table to store BranchSession data
CREATE TABLE IF NOT EXISTS `branch_table`
(
    `branch_id`         BIGINT       NOT NULL,
    `xid`               VARCHAr(128) NOT NULL,
    `transaction_id`    BIGINT,
    `resource_group_id` VARCHAr(32),
    `resource_id`       VARCHAr(256),
    `branch_type`       VARCHAr(8),
    `status`            TINYINT,
    `client_id`         VARCHAr(64),
    `application_data`  VARCHAr(2000),
    `gmt_create`        DATETIME(6),
    `gmt_modified`      DATETIME(6),
    PRIMARY KEY (`branch_id`),
    KEY `idx_xid` (`xid`)
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8;

-- the table to store lock data
CREATE TABLE IF NOT EXISTS `lock_table`
(
    `row_key`        VARCHAr(128) NOT NULL,
    `xid`            VARCHAr(128),
    `transaction_id` BIGINT,
    `branch_id`      BIGINT       NOT NULL,
    `resource_id`    VARCHAr(256),
    `table_name`     VARCHAr(32),
    `pk`             VARCHAr(36),
    `gmt_create`     DATETIME,
    `gmt_modified`   DATETIME,
    PRIMARY KEY (`row_key`),
    KEY `idx_branch_id` (`branch_id`)
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8;

CREATE TABLE IF NOT EXISTS `distributed_lock`
(
    `lock_key`       CHAr(20) NOT NULL,
    `lock_value`     VARCHAr(20) NOT NULL,
    `expire`         BIGINT,
    primary key (`lock_key`)
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8mb4;

INSERT INTO `distributed_lock` (lock_key, lock_value, expire) VALUES ('AsyncCommitting', ' ', 0);
INSERT INTO `distributed_lock` (lock_key, lock_value, expire) VALUES ('RetryCommitting', ' ', 0);
INSERT INTO `distributed_lock` (lock_key, lock_value, expire) VALUES ('RetryRollbacking', ' ', 0);
INSERT INTO `distributed_lock` (lock_key, lock_value, expire) VALUES ('TxTimeoutCheck', ' ', 0);
6.修改file.conf配置

修改seata-server-1.4.2conf目录下的file.conf配置文件,此处要注意一下,mysql5和mysql8的驱动是不一样的。

7.修改registry.conf配置

修改seata-server-1.4.2conf目录下的registry.conf配置文件,此处的namespace就是在Nacos中创建的seata命名空间。

8.修改config.txt文件

修改config.txt,并导入nacos-server配置

这个config.txt配置文件在哪里呢?如果在第一步中,seata的源码能下载下来,这文件就是这个源码里。如果下载不下来,就直接去github上去拷贝,把整个script文件夹拷贝下来。config.txt在configt-center文件夹下面。

https://github.com/seata/seata/blob/develop/script/config-center/config.txt


做如下修改:

下面要把config.txt中的文件导入都Nacos的配置中心里,需要进入到config-center目录下的nacos文件夹,里面有两个文件,一个是.sh文件,一个是.py文件,当然也就提供了两种方式导入Nacos配置中心。下面使用.sh文件,在nacos文件下打开git bash终端命令行,执行如下命令:

sh nacos-config.sh -h 127.0.0.1 -p 8848 -g SEATA_GROUP -t 88b8f583-43f9-4272-bd46-78a9f89c56e8 -u nacos -w nacos

-h:nacos地址
-p:端口,默认8848
-g:seata的服务列表分组名称
-t:nacos命名空间id
-u和-w:nacos的用户名和密码

执行有4个失败,看看失败项,其实也没啥。


在Nacos配置中心,查看导入的配置项。

9.启动seata-server

建议用CMD命令行窗口执行,这样可以看到启动错误,如果启动报错,可能有两个原因,第一,内存需要调整,第二,数据库脚本没有执行。


JVM启动参数调整如下:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5660118.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存