存储引擎是什么概念?

设有张马虎,李小心两人,都是地铁口的自行车管理员.

每天都有很多人来存取自行车,张马虎的管理方式是:来存自己存,不记录存的是什么车,取时交5毛,也不检查取的是否是自己的车.

李小心呢,则在存取自己车时,记录存车人的特征与自行车的特征,当人来取钱车,还要小心核一下,人与车的特征是否对应


思考:

张马虎和李小心谁对业务的处理速度更高?

二者谁对自行车管理更安全?

数据库对同样的数据,有着不同的存储方式和管理方式

mysql中,称为存储引擎

储存引擎与其特点:

myisam:每个库和表都有对应的文件。备份相当方便

innodb:则不行,不能直接复制文件目录来备份。

1555665426384886.png

.frm 声明这个表结构用的,相当于一本书的基本属性。

.myd 表的数据,相当于一本书的正文

.myi 索引文件,相当于一本书的目录


相关推荐

mysql视图:view(优化查询速度必备)

用法:创建的视图create view 视图表名称 as 查询语句;例如:create view 视图表名称 as select * from class where id>2;select *

mysql查询字段忽略大小写

//问题:mysql的字符集改成严格区分大小写后,模糊搜索的时候不能忽略大小写。//解决方案:把数据库字段转为小写,like后的参数也都转为小写 SELECT *FROM 表名 LOWER(字段

mysql环境变量设置(win7系统)

在cmd直接执行mysql命令时候显示: 'mysql' 不是内部或外部命令,也不是可运行的程序 解决方法右键点击“计算机”-“属性”-“高级系统设置”-“环境变量”-“系统 变量”

mysqlsqlite 在某字段后面追加字符串

mysql在某个字段的最后面 追加一个字符串:$sql="update 表名 set 某字段=CONCAT(某字段,'要追加的字符串') where id =123"

mysql sqlite取表内最大id语句 取最新插入id 取表行数

取最大ID方法一:select MAX(id) from 表名 方法二:select * from sqlite_sequence where name='表名' 以上两种方法 500

mysql sqlite 删除旧数据 只保留最新的100条

完整语句:delete from _sql执行记录 where id in (select id from _sql执行记录 order by id desc limit 100,100000)del

mysql最大行数限制

以下内容仅是猜测:一般习惯每建一个表 第一个字段都是id,且是自增的所以感觉可能会取决于自增id的数据类型一般自增id都用int 默认就是20多亿行 如果加了 unsigned 就是40多亿行 超过

mysql数据类型

mysql创建表语句格式:create table tablename(列1 int unsigned,//unsigned意思是无符号。不为负。列2 列类型 列属性 默认值,列3 列类型

mysql root用户远程登录并获取所有权限

允许root用户在一个特定的IP进行远程登录,并具有所有库任何操作权限,具体操作如下:端口就不多说了 肯定要开放端口然后依次执行下面四条命令即可.在本机先使用root用户登录mysql:mysql -

mysql修改字段名语句

最简单的语句ALTER TABLE 表名 CHANGE 旧字段名 新字段名 新数据类型;必须带上新的数据类型 修改后 注释也没了 如果要加注释和属性 可以紧跟后面加上去,例如: ALTER TABL