您的位置:首页 > 数据库 > MySQL

关与MySql数据库的事物,视图,索引,备份和恢复

2017-10-01 21:40 393 查看

1.事务

      概念:(1)事物时作为单个逻辑工作单元执行的一系列操作。
               (2)多个操作作为一个总体向系统提交,要么都执行,要么都不执行。
               (3)事务是一个不可分割的工作逻辑单元。
    事务的四个属性,其简称ACID属性
               (1)原子性:事务是一个完整的操作,事务的各步操作是不可分的,要么都执行,要么都不执行。
               (2)一致性:当事务完成时,数据必须处于一致状态。
               (3)隔离性:并发事物之间彼此隔离,独立,它不应以任何方式依赖于或影响其他事务
               (4)持久性:事务完成后,它对数据库的修改被永久保持。
     语法:开始事务
                    BEGIN
                    或
                    START TRANSACTION;
      提交事务
                    COMMIT;
      回滚(撤销)事务
                    ROLLBACK;
       存储引擎: InnoDB 和 BDB

       自动关闭和开启事务:
                     开启/关闭自动提交状态
                      SET autocommit = 1/0;
           值为0: 关闭自动提交
           值为1: 开启自动提交
 
           注:

关闭自动提交后,从下一条SQL语句开始则开启新事务,需使用COMMIT或ROLLBACK语句结束该事务

2.视图          

         定义:

             (1)视图是一张虚拟表

             (2)表示一张表的部分数据或多张表的综合数据

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

             (4)视图中不存放数据

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

             (5)一个原始表,根据不同用户的不同需要,可以创建不同的视图

        视图的用途

             (1)筛选表中的行

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

             (3)降低数据库的复杂程度

             (4)将多个物理数据库抽象为一个逻辑数据库

          

          语法:

             (1)创建视图  create view 视图名称 as  <select 语句>;

             (2)删除视图  drop view [if exists] 视图姓名;

             (3)查看视图  select 字段1,字段2,......FROM 视图名

         注意事项:

             (1)视图可以使用多个表

             (2)一个视图可以嵌套另一个视图

             (3)对视图数据进行添加,更新和删除操作直接影响所引用表中的数据

             (4)当视图数据来自多个表时,不允许添加和删除数据

3.索引

         定义:索引是一种有效组合数据的方式,为快速查找到指定记录
         作用:
               (1)大大提高数据库的检索速度
               (2)改善数据库性能
         MySQL索引按存储类型分类
               (1)B-树索引:InnoDB,MyISAM均支持
               (2)哈希索引
        常用的索引
                (1)普通索引
                (2)唯一索引
               
(3)主键索引

                (4)复合索引
                (5)全文索引
                (6)空间索引 
         创建索引
              create [索引类型] index 索引名 on 表名 (列名);
         删除索引
              drop index 索引名 on 表名;
          
        索引的优缺点
              优点:
                       加快访问速度,加快行的唯一性
              缺点: 
                       带索引的表在数据库中需要更多的存储空间
                       操作数据的命令需要更长的处理时间,因为它们需要对索引进行更新
         
        查看索引
              show index from 表名


4.备份数据流库

       
 mysqldump命令——MySql中一个常用的备份工具
             (1)其是将create和insert into语句保存到文本文件
             (2)属于DOS命令
              
         语法:
             mysqldump -u 用户名 -h 登录主机名 -p 密码 数据库名 表1,表二....
> 备份后的文件路径/文件名称.sql

         
         注: mysqldump是DOS系统下的命令,使用是无须进入mysql命令行,不然无法执行
         

         mysql -u 用户名 -p 密码 数据库名
< 路径//备份文件名.sql  //mysql也为DOS命令,若不存在数据库则会报错
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: