为了账号安全,请及时绑定邮箱和手机立即绑定

mysql优化概述

标签:
PHP MySQL 安全
从以下五个方面来考虑mysql优化的问题:
1、设计角度: 
  存储引擎的选择,字段类型选择,范式   
  存储引擎: innoDB、mysiam

2、功能:   
 利用mysql自身的特性:索引,查询缓存,分区、分表,存储过程

3、SQL语句的优化

4、部署大负载MySQL架构体系:   
   主从复制,读写分离,主主复制,集群。

5、硬件升级


先从第一个来说:
设计角度:

1.MyISAM查询性能比InnoDB更快,但不支持事务处理,InnoDB支持事务处理和外键等高级功能
2.在mysql5.6版本之前InnoDB不支持全文检索,5.6以后支持了
3、每张MyISAM 表被存放在三个文件 :frm 文件存放表格定义。 数据文件是MYD (MYData) 。 
 索引文件是MYI (MYIndex) 引伸。因为MyISAM相对简单所以在效率上要优于InnoDB,小型应用使用
 MyISAM是不错的选择。MyISAM表是保存成文件的形式,在跨平台的数据转移中使用MyISAM存储会省去
 不少的麻烦InnoDB 把数据和索引存放在表空间里,可能包含多个文件,这与其它的不一样,举例来
 说,在 MyISAM 中,表被存放在单独的文件中。InnoDB 表的大小只受限于操作系统的文件大小,
 一般为 2 GB。InnoDB所有的表都保存在同一个数据文件 ibdata1 中(也可能是多个文件,或者是
 独立的表空间文件),相对来说比较不好备份。

数据库存储引擎

① 查看MySQL支持的数据库引擎(MySQL5.5以后默认的存储引擎是innerDB)

基本语法:

show engines; 查看MySQL支持的所有引擎

  mysql 5.6之后innoDB才支持全文索引https://img1.sycdn.imooc.com//5b2a015f0001181206120380.jpg

② 支持的功能不同

Myisam引擎:擅长数据查询和新增操作,另外其还支持全文索引(英文分词技术)

InnoDB引擎:擅长数据的更新和删除操作,还支持事务处理,另外MySQL5.6之后其也支持全文索引了

 

③ 存储机制也不同

   2种引擎对应的数据库的结构不一致,文件数目不一致,且数据保存的文件也不一致

https://img1.sycdn.imooc.com//5b2a01df0001d04610280309.jpg

InnoDB和myisam区别

1. 文件的存储形式不一样

2. myisam的批量插入和查询效率高,而InnoDB的修改和删除效率高

3. 事务安全只有InnoDB支持,myisam不支持

4. InnoDB支持外键,myisam不支持



点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消