-- 全局事务表 CREATEDATABASEIFNOTEXISTS seata ; -- -- Licensed to the Apache Software Foundation (ASF) under one or more -- contributor license agreements. See the NOTICE file distributed with -- this work for additional information regarding copyright ownership. -- The ASF licenses this file to You under the Apache License, Version 2.0 -- (the "License"); you may not use this file except in compliance with -- the License. You may obtain a copy of the License at -- -- http://www.apache.org/licenses/LICENSE-2.0 -- -- Unless required by applicable law or agreed to in writing, software -- distributed under the License is distributed on an "AS IS" BASIS, -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -- See the License for the specific language governing permissions and -- limitations under the License. -- -- -------------------------------- The script used when storeMode is 'db' -------------------------------- -- the table to store GlobalSession data CREATETABLEIFNOTEXISTS seata.`global_table`( `xid`VARCHAR(128) NOT NULL, `transaction_id`BIGINT, `status`TINYINTNOT 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_status_gmt_modified` (`status` , `gmt_modified`), KEY`idx_transaction_id` (`transaction_id`) ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4; -- the table to store BranchSession data CREATETABLEIFNOTEXISTS seata.`branch_table`( `branch_id`BIGINTNOT 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 = utf8mb4; -- the table to store lock data CREATETABLEIFNOTEXISTS seata.`lock_table`( `row_key`VARCHAR(128) NOT NULL, `xid`VARCHAR(128), `transaction_id`BIGINT, `branch_id`BIGINTNOT NULL, `resource_id`VARCHAR(256), `table_name`VARCHAR(32), `pk`VARCHAR(36), `status`TINYINTNOT NULLDEFAULT'0' COMMENT '0:locked ,1:rollbacking', `gmt_create`DATETIME, `gmt_modified`DATETIME, PRIMARY KEY (`row_key`), KEY`idx_status` (`status`), KEY`idx_branch_id` (`branch_id`), KEY`idx_xid` (`xid`) ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4; CREATETABLEIFNOTEXISTS seata.`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 seata.`distributed_lock` (lock_key, lock_value, expire) VALUES ('AsyncCommitting', ' ', 0); INSERT INTO seata.`distributed_lock` (lock_key, lock_value, expire) VALUES ('RetryCommitting', ' ', 0); INSERT INTO seata.`distributed_lock` (lock_key, lock_value, expire) VALUES ('RetryRollbacking', ' ', 0); INSERT INTO seata.`distributed_lock` (lock_key, lock_value, expire) VALUES ('TxTimeoutCheck', ' ', 0);