MySql分布式事务与备份

分布式事务

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常见问题总结

你可能感兴趣的:(mysql,数据库)