请问seata如何正常初始化数据库?

请问seata如何正常初始化数据库?

展开
收起
十一0204 2023-06-28 15:28:54 167 分享 版权
1 条回答
写回答
取消 提交回答
  • 要正常初始化 Seata 的数据库,您需要在 Seata 上执行下列 SQL 语句:

    CREATE DATABASE seata;
    USE seata;
    CREATE TABLE seata_global_table (
    xid VARCHAR(64) NOT NULL,
    transaction_id VARCHAR(64) NOT NULL,
    status INT NOT NULL,
    application_id VARCHAR(32) NOT NULL,
    transaction_service_group VARCHAR(32) NOT NULL,
    transaction_name VARCHAR(64),
    timeout INT,
    begin_time TIMESTAMP NOT NULL,
    end_time TIMESTAMP,
    rollback_log BLOB,
    confirm_log BLOB,
    PRIMARY KEY (xid));
    CREATE TABLE seata_local_transaction_table (
    xid VARCHAR(64) NOT NULL,
    branch_id VARCHAR(64) NOT NULL,
    resource_id VARCHAR(255) NOT NULL,
    lock_key VARCHAR(255) NOT NULL,
    state INT NOT NULL,
    application_id VARCHAR(32) NOT NULL,
    transaction_service_group VARCHAR(32) NOT NULL,
    transaction_name VARCHAR(64),
    timeout INT,
    begin_time TIMESTAMP NOT NULL,
    application_data BLOB,
    gmt_create TIMESTAMP NOT NULL,
    gmt_modified TIMESTAMP NOT NULL,
    PRIMARY KEY (xid, branch_id));
    如果您使用的是 MySQL,请将 SQL 语句中的 VARCHAR 改为 CHAR。

    要检查 Seata 数据库是否正常初始化,您可以执行下列 SQL 语句:

    SELECT count() FROM seata_global_table;
    SELECT count(
    ) FROM seata_local_transaction_table;
    如果 Seata 数据库初始化成功,那么这两个 SQL 语句都会返回 1。

    2023-09-28 12:55:36
    赞同 展开评论

为企业提供高效、稳定、易扩展的中间件产品。

还有其他疑问?
咨询AI助理