加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

使用MySQL进行分片和事务处理

发布时间:2021-04-07 19:03:08 所属栏目:编程 来源:网络整理
导读:通过度片,如安在多个数据库处事器之间维护靠得住的事宜? 譬喻,假如我在一个数据库处事器(MySQL实例)上有一个名为AccountLedger的表,而在另一个数据库处事器上有一个名为User的表,是否可以跨两个数据库实例运行一个事宜,该事宜既可以提交,也可以在失败时回滚?

通过度片,如安在多个数据库处事器之间维护靠得住的事宜?

譬喻,假如我在一个数据库处事器(MySQL实例)上有一个名为AccountLedger的表,而在另一个数据库处事器上有一个名为User的表,是否可以跨两个数据库实例运行一个事宜,该事宜既可以提交,也可以在失败时回滚?

示例买卖营业:

AccountLedger数据库处事器:

START TRANSACTION;
INSERT INTO AccountLedger SET
    UserID = @UserID,Date = @Date,Debit = @Debit,Balance = @Balance;

用户数据库处事器

START TRANSACTION;
UPDATE User SET
    Balance = @Balance
WHERE UserID = @UserID;

AccountLedger数据库处事器:

COMMIT;

用户数据库处事器

COMMIT; -- What happens if the COMMIT fails here (power goes out or whatever)

我已经阅读了许多关于分片的内容,但我好像无法找到有关行使分片的事宜的任何信息.有人能指出我正确的偏向吗? 最佳谜底 可以行使漫衍式事宜执行此操纵.它们由InnoDB存储引擎支持.您将在MySQL文档中找到有关它们以及呼吁语法的更多信息:XA Transactions

我提议不要直接行使它们.假如同等性是ypur应用措施的最大体求,那么行使可以处理赏罚它的事宜监督器. Java EE为您做到了这一点.

可是,假如可用性比同等性更重要,则应停止漫衍式事宜. CAP定理表明白缘故起因.

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读