MySql分布式事务与备份

2次阅读

共计 629 个字符,预计需要花费 2 分钟才能阅读完成。

分布式事务

InnoDB 通过 XA 事务(媒介) 来反对分布式事务。InnoDB 必须在 SERIALIZABLE 隔离级别下能力开启分布式事务。

XA 事务是连贯 多个不同数据库 来进行分布式事务的媒介。
分布式事务的特点:两次提交 (two-phase commit),第一阶段,所有分布式节点 资源管理器 提交筹备 (PREPARE) 指令, 通知 事务管理器 准备就绪。第二阶段,事务管理器通知所有资源管理器,是 commit 还是 rollback。若在第一阶段有节点不能提交 PREPARE, 则会 rollback。

能够了解为 两次握手,所有的资源管理器与一个核心握手。

定义变量:

  • SET @var_name = 1;   没有默认值
  • DECLARE var_name INT DEFAULT 1; 默认值为 NULL;

备份

  • mysqldump 工具   整个 table 或 schema
    mysqldump --all-databases > dump.sql;
    mysqldump -databases db1 db2 db3 >dump.sql;

    复原: mysql -u root -p < dump.sql;

  • SELECT * INTO OUTFILE … FROM tbl;   表中的某几列
    select * into outfile '/home/mysql/a.txt' form a;

通用复原: load data infile '/home/mysql/a.txt' into table a;

  • 热备工具

    • ibbackup
    • xtrabackup

附上一个他人的 mysql 总结:MySql 常见问题总结

正文完
 0