1、 导入hellodb.sql生成数据库
mysql < hellodb.sql
(1) 在students表中,查询年龄大于25岁,且为男性的同学的名字和年龄
select name,age from students where age > 25 and Gender = ‘M’ ;
(2) 以ClassID为分组依据,显示每组的平均年龄
select classid,avg(age) from students group by classid;
(3) 显示第2题中平均年龄大于30的分组及平均年龄
select classid,avg(age) from students group by classid having avg(age) > 25 ;
(4) 显示以L开头的名字的同学的信息
select * from students where name like ‘l%’;
2、数据库授权magedu用户,允许192.168.1.0/24网段可以连接mysql
create user magedu;
grant all on . to ‘magedu’@‘192.168.1.%’ identified by ‘magedu’;
flush peivileges;
3、总结mysql常见的存储引擎以及特点。
常见存储引擎
注明:
Mysql中用的最多的两种存储引擎就是MyISAM和InnDB,其中MyISAM是5.1版本之前的默认存储引擎,InnoDB是5.1版本之后的默认存储引擎。
①不支持事务
②表级锁定
③读写相互阻塞,写入不能读,读时不能写
④只缓存索引
⑤不支持外键约束
⑥不支持聚簇索引
⑦读取数据较快,占用资源较少 ,不支持MVCC(多版本并发控制机制)高并发
⑧崩溃恢复性较差
⑨MySQL5.5.5前默认的数据库引擎 ,查询速度快、存储空间小,原因是在磁盘上分成三个文件存储:
.frm(存储表定义),.MYD(MYData,存储数据),.MYI(MYIndex,存储索引),SELECT COUNT(*) FROM TABLE时,避免了全表扫描。
MyISAM存储引擎适用场景
只读(或者写较少)、表较小(可以接受长时间进行修复操作),适合查询多、写入少的业务场景
InnoDB
行级锁 ,支持行级锁及外键约束,所以在可以支持写并发。
支持事务,适合处理大量短期事务 ,支持ACID的事务,支持事务的四种隔离级别。
读写阻塞与事务隔离级别相关
可缓存数据和索引
支持聚簇索引
崩溃恢复性更好
支持MVCC高并发
从MySQL5.5后支持全文索引 ,SELECT COUNT(*) FROM TABLE时会进行全表扫描,效率低于MyISAM。
从MySQL5.5.5开始为默认的数据库引擎