码迷,mamicode.com
首页 > 其他好文 > 详细

时势造英雄、仅此怀念伟大人(第十四周)

时间:2020-03-15 23:50:34      阅读:76      评论:0      收藏:0      [点我收藏+]

标签:oss   并发控制   col   process   占用   mysql   基于   全文索引   节点   

一、 导入hellodb.sql生成数据库
1、打开数据库,然后使用mysql uroot -predhat打开数据库;
2、导入数据内容;rz导入hellodb_innodb数据库;
技术图片
3、导入数据内容,数据库出现hellodb数据库;
技术图片
技术图片
(1) 在students表中,查询年龄大于25岁,且为男性的同学的名字和年龄;
技术图片
(2) 以ClassID为分组依据,显示每组的平均年龄;
技术图片
(3) 显示第2题中平均年龄大于30的分组及平均年龄;
技术图片
(4) 显示以L开头的名字的同学的信息;
技术图片
二、数据库授权magedu用户,允许192.168.1.0/24网段可以连接mysql
技术图片
测试
技术图片
三、总结mysql常见的存储引擎以及特点。
MyISAM
①不支持事务
②表级锁定
③读写相互阻塞,写入不能读,读时不能写
④只缓存索引
⑤不支持外键约束
⑥不支持聚簇索引
⑦读取数据较快,占用资源较少 ,不支持MVCC(多版本并发控制机制)高并发
⑧崩溃恢复性较差
⑨MySQL5.5.5前默认的数据库引擎 ,查询速度快、存储空间小,原因是在磁盘上分成三个文件存储:.frm(存储表定义),.MYD(MYData,存储数据),.MYI(MYIndex,存储索引),SELECT COUNT() FROM TABLE时,避免了全表扫描。
1、MyISAM存储引擎适用场景
只读(或者写较少)、表较小(可以接受长时间进行修复操作),适合查询多、写入少的业务场景
2、MyISAM引擎文件
tbl_name.frm 表格式定义
tbl_name.MYD 数据文件
tbl_name.MYI 索引文件

InnoDB
①InnoDB,最大的特点就是支持事务和行锁,是现在Mysql的默认存储引擎。
②对事务和写并发的支持使InnDB成为互联网公司最常使用的存储引擎。
InnoDB引擎特点
①行级锁 ,支持行级锁及外键约束,所以在可以支持写并发。
②支持事务,适合处理大量短期事务 ,支持ACID的事务,支持事务的四种隔离级别。
③读写阻塞与事务隔离级别相关
④可缓存数据和索引
⑤支持聚簇索引
⑥崩溃恢复性更好
⑦支持MVCC高并发
⑧从MySQL5.5后支持全文索引 ,SELECT COUNT(*) FROM TABLE时会进行全表扫描,效率低于MyISAM。
⑨从MySQL5.5.5开始为默认的数据库引擎

MEMORY
①MEMORY是一种特殊的存储引擎,特点是使用存储在内存中的内容来创建表,并且数据全部放在内存中。
②每个基于MEMORY存储引擎的表实际对应一个磁盘文件。
③该文件的文件名与表名相同,类型为frm类型。
④该文件中只存储表的结构,而其数据文件,都是存储在内存中,这样有利于数据的快速处理,提高整个表的效率。
⑤需要注意的是,服务器需要有足够的内存来维持MEMORY存储引擎的表的使用。
⑥如果不需要了,可以释放内存,甚至删除不需要的表。
⑦将所有数据存储在RAM中,以便在需要快速查找参考和其他类似 数据的环境中进行快速访问。适用存放临时数据。
⑧引擎以前被称为HEAP引擎
⑨MEMORY默认使用哈希索引,速度比使用B树索引快。当然如果你想用B型树索引,可以在创建索引时指定。
注意,MEMORY用到的很少,因为它是把数据存到内存中,如果内存出现异常就会影响数据。
⑩如果重启或者关机,所有数据都会消失。
因此,基于MEMORY的表的生命周期很短,一般是一次性的。
所有的数据都在内存中,处理速度快,但是安全性不高。对表的大小有要求,依赖内存,不能建立太大的表。
Archive
为存储和检索大量很少参考的存档或安全审核信息,只支持 SELECT和INSERT操作;支持行级锁和专用缓存区

NDB
①基于集群的引擎-数据被自动切分并复制到数个机器上(数据节点), 适合于那些需要极高查询性能和高可用性的应用,
②NDB提供了高达99.999%的可靠性,在读操作多的应用中表现优异。
③对于有很多并发写操作的应用, 还是推荐用InnoDB.
④如果你网站并发高,数据量不会大到需要去集群管理 ,还是推荐用innodb.
⑤如果只是小应用 没什么数据请求量 MyISAM的读取速度更快些

Federated存储引擎
Federated存储引擎不存放数据,它至少指向一台远程MySQL数据库服务器上的表,非常类似于Oracle的透明网关。

Maria存储引擎
Maria存储引擎是新开发的引擎,其设计目标是用来取代原有的MyISAM存储引擎,从而成为MySQL默认的存储引擎。

时势造英雄、仅此怀念伟大人(第十四周)

标签:oss   并发控制   col   process   占用   mysql   基于   全文索引   节点   

原文地址:https://blog.51cto.com/7814301/2478455

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!