007-001 Seata1.3.0使用Oracle

1. 在\color{blue} {业务数据库执行}创建UNDO_LOG表
create trigger sequence_undo_log before 
    insert on undo_log for each row when (new.id is null) 
begin 
    select  sequence_undo_log.nextval into:new.id from dual;  
end;
2. 在\color{blue} {seata数据库}创建表
image.png
sh nacos-config.sh -h 210.210.210.212 -p 8848 -g SEATA_GROUP -t seata  -u nacos帐号 -w nacos密码

  • 命令解读
    1. -h : nacos地址
    2. -p : nacos端口
    3. -g : 注册分组
    4. -t : 注册的命名空间
    5. -u : nacos登录帐号
    6. -w: nacos登录密码
    1. 修改配置-registry.conf


      image.png
image.png
    1. 修改file.conf


      image.png
    1. 上传到服务器
    • 先将 oracle 的驱动包添加的lib 目录下面去


      image.png
    • 上传文件


      image.png
    1. 建立文件
mkdir /opt/seata-server-1.3.0/seata/logs && vim /opt/seata-server-1.3.0/seata/logs/seata_gc.log
chmod -R a+w ./seata-server-1.3.0/seata/logs
image.png
    1. 删除多余的命令并给予执行权限
chmod -R +x /opt/seata-server-1.3.0/seata/bin/ && rm -fr  /opt/seata-server-1.3.0/seata/bin/seata-server.bat
  • 项目启动
nohup /opt/seata-server-1.3.0/seata/bin/seata-server.sh >/opt/seata-server-1.3.0/seata/logs/log.out 2>1 &
nohup /opt/seata-server-1.3.0/seata/bin/seata-server.sh -h 210.210.210.198 >/opt/seata-server-1.3.0/seata/logs/log.out 2>1 &
    1. 关于报错 的解决方案
 i.s.r.d.u.p.JacksonUndoLogParser - json encode exception, No serializer found for class java.io.ByteArrayInputStream and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain: io.seata.rm.datasource.undo.BranchUndoLog["sqlUndoLogs"]->java.util.ArrayList[1]->io.seata.rm.datasource.undo.SQLUndoLog["afterImage"]->io.seata.rm.datasource.sql.struct.TableRecords["rows"]->java.util.ArrayList[0]->io.seata.rm.datasource.sql.struct.Row["fields"]->java.util.ArrayList[6]->io.seata.rm.datasource.sql.struct.Field["value"]->oracle.sql.TIMESTAMP["stream"])
image.png
  • 修改nacos->seata配置项序列化方式 client.undo.logSerialization=kryo


    image.png
client.undo.logSerialization
  • 这个配置 在config.txt 中可以找到
  • 并添加对应jar到工程中
        <dependency>
            <groupId>com.esotericsoftware.kryo</groupId>
            <artifactId>kryo</artifactId>
            <version>2.24.0</version>
        </dependency>
        <dependency>
            <groupId>de.javakaffee</groupId>
            <artifactId>kryo-serializers</artifactId>
            <version>0.45</version>
        </dependency>
        <dependency>
            <groupId>com.esotericsoftware</groupId>
            <artifactId>kryo</artifactId>
            <version>4.0.2</version>
        </dependency>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容