MySQL事务视图索引备份和恢复概念介绍

一、事务

事务(TRANSACTION)是一种机制、一个操作序列,包含了一组数据库操作命令,并且把所有的命令作为一个整体一起向系统提交或撤销操作请求,即这一组数据库操作命令要么都执行,要么都不执行。

事务是一个不可分割的工作逻辑单元 。

二、事务的特性

事务必须具备以下四个属性,简称ACID 属性

原子性(Atomicity)

事务的各步操作是不可分的(原子的),要么都执行,要么都不执行

一致性(Consistency)

当事务完成时,数据必须处于一致状态

隔离性(Isolation)

并发事务之间彼此隔离、独立,它不应以任何方式依赖于或影响其他事务

持久性(Durability)

事务完成后,它对数据库的修改被永久保持

三、MySQL事务处理

MySQL中支持事务的存储引擎有InnoDB和BDB。

方法1:用 BEGIN, COMMIT,ROLLBACK来实现。

  • BEGIN ; #开始事务,显式地标记一个事务的起始点
  • COMMIT ; #提交事务,标志一个事务成功提交。
  • ROLLBACK; #回滚事务,清除自事务起始点至该语句所做的所有数据更新,将数据状态回滚到事务开始前,并释放由事务控制的资源。

方法2:直接用 SET 来改变 MySQL 的自动提交模式。

默认情况下,每条单独的SQL语句视为一个事务 关闭默认提交状态后,可手动开启、关闭事务

  • SET autocommit = 0|1;
  • 值为0:关闭自动提交
  • 值为1:开启自动提交

四、视图

视图是一张虚拟表,表示一张表的部分数据或多张表的综合数据。

其结构和数据是建立在对表的查询基础上

视图中不存放数据,数据存放在视图所引用的原始表中

一个原始表,根据不同用户的不同需求,可以创建不同的视图。

视图的用途:

筛选表中的行

防止未经许可的用户访问敏感数据

将多个物理数据库表抽象为一个逻辑数据库表

五、管理视图

1、使用SQL语句创建视图

CREATE VIEW view_name AS