mysql架构篇之引擎与事务介绍

什么是引擎?

MySQL服务软件自带的功能程序,处理表的处理器

不同的存储引擎有不同的功能和数据存储方式

Mysql5.1以下--------->mysam

Mysql5.5以上----------->innoDB

 

 

列出可用的存储引擎类型:

show engines;

修改表存储引擎

未指定时,使用默认存储引擎

alter  table   表名  engine=存储引擎名;

 

修改服务存储引擎

修改/etc/my.cnf配置文件

[mysql]
default-storge-engine=存储引擎

重启myslq服务
systemctl restart mysqld

 

Myisal存储引擎的特点:

主要特点:

  --支持表级锁

  --不支持事物、事物回滚、外键

 

表文件:

  .frm  //表结构

  .MYI  //索引

  .MYD  //数据

 

innoDB引擎

主要特点:

  --支持行级锁定

  --支持事物、事物回滚、外键

表文件

  .frm

  .idb

事物日志

  --ibdata1

  --ib_logfile0

  --ib_logfile1

 

 

锁表机制

锁粒度

  --表级锁,对整张表加锁

  --行级锁:仅对被访问的行分别加锁

锁类型:

  --读锁:支持并发读

  --写锁:是独占锁,上锁期间其他线程不能读表或写表

 

查看当前锁状态

show status like "table_lock%";

 

 

事物特性:

1:原子性

  事物的整个操作是一个征途,不可分割

  要么全部成功,要么全部数百

2:一致性

  事务操作的前后,表中的记录没有变化

3:隔离性

  事物操作是互相隔离不受影响的

4:持久性

  数据一旦提交,不可改变,永久改变表数据

 

 

 

事物特性:

相关命令

mysql> show variables like "autocommit";     //查看提交状态    
mysql> set autocommit=off;           //关闭自动提交
mysql> rollback;           //数据回滚
mysql> commit;            //提交数据    

 

posted @ 2021-05-02 16:36  樱花泪  阅读(45)  评论(0编辑  收藏  举报