-
什么是mysql
一个关系型数据库(数据采用行和列来存储的表组成的数据库)
-
mysql是干什么的?
存储数据,可以存放信息,图片,视频等...
-
mysql具体使用
mysql使用 一种被称之为 结构化查询语言的数据库语言来操作,其名 sql
sql:定义了关系型数据库的查询规范
sql的分类:
DDL: 用于操作数据库和表,如创建数据库,创建表,修改表名,字符集等
DMl:用于操作表中的数据,如插入,删除,增加列等
DQL:用于查询表中的数据
DCL:用于用户授权
mysql中的事务是什么?
用于管理多个执行sql的增删改操作,是他们具有ACID 特性
A: 原子性,原子不可分割,所以原子性是指被事务管理的多个操作,同样变成了不可分割的,它们要么同时执行成功,要么执行失败
C: 一致性,无论sql成功还是失败,数据总量都不会改变(像两个人转账,不论是否转账成功,他们相加的总金额都不应该改变)
I: 隔离性,多个事务之前相互独立
D: 持久性,事务提交后,数据会持久化的保存下来
什么是隔离级别?
会发生的问题
脏读:事务A读到了事务B未提交的内容
不可重复读:事务A操作一个变量时,事务B对其进行了修改,导致事务A执行出现问题
幻读:事务A在修改表中全部数据的时候,事务B对表中数据进行了增加,被事务A读取到了未修改的数据
隔离级别
读未提交:产生所有问题
读已提交:解决了脏读
可重复读:解决了脏读,不可重复读
串行化:解决了所有问题
从上到下,并发效率,依次降低
mysql中的存储引擎是什么?
存储引擎:用于定义数据存储的结构
常用的有:MyISAM、InnoDB
主要区别:MyISAM不支持事务不支持外键,InnoDB支持事务支持外键
使用场景:MyISAM 效率较高,适用于对并发性要求较低的程序,InnoDB 支持事务和并发控制,适用于并发场景大的程序
mysql中的索引
常见的索引有
主键索引、唯一索引、普通索引、组合索引、全文索引