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

【金秋打卡】第5天 MySQL性能管理及架构设计

标签:
MySQL

课程名称:扛得住的MySQL数据库架构

课程讲师:sqlercn

课程内容:


影响Mysql的性能因素:

sql查询速度:mysql不支持多CPU并发运算,一个Sql只能对应一个CPU

大量高并发:数据库连接数被占满(max——connenctions默认100)

CPU的使用率:因CPU使用率过高出现宕机

网卡流量:减少从服务器数量(因为从服务器要从主服务器复制日志)

                  使用分级缓存

                  减少使用select * 语句

                   分离业务网络和服务器网络

 磁盘I/O:磁盘性能突然下降(使用更快的磁盘)

                 消耗磁盘的计划任务(调整计划任务,做好磁盘维护)

大表:记录行数大,单表操作过千万行

            表数据文件巨大,表数据文件操作10G

            问题:慢查询:

            建立索引需要很长时间

            风险:Mysql版本<5.5建立索引会锁表

            MySql版本>5.5虽然不会锁表但会引起主从延迟

            问题: 修改表结构需要长时间锁表

             风险:会造成长时间主从延迟

             影响正常的数据操作,连接数占满

            处理方式:1.大表变为小表

            难点:分表主键的选择

                       分表后跨分区的数据查询和统计

                        2.大表的历史数据归档

                            难点:归档时间点的选择

                            如何进行归档操作

              事务:原子性

                         一致性

                          持久性

                           隔离性: 

QPS:每秒查询量

TPS:每秒事务处理量

影响性能的几个方面:

   服务器硬件:

       CPU:

           CPU密集型:加快SQL查询

           Web类应用:CPU数量

       内存:

       网络:

       磁盘:SSD,NAS,SAN,

   操作系统:

   数据库存储引擎:

        MyISAM:不支持事务,表级锁,索引缓存在内存中,数据缓存在OS中

                     MySQl5.5之前版本默认的存储引擎

                     临时表:在排序,分组等操作中,当数量超过一定的大小之后,由查询优化器建立的临时表。            

                     MyISAM存储引擎表由MYD和MYI组成

                     数据文件为myd为扩展名,索引文件为myi为扩展名

        InnoDB:事务级存储引擎,完美支持行级锁,事务ACID特性,在内存中缓存索引和数据

   存储引擎是针对表的而不是针对库的

   数据库参数配置:

   数据库表机构设计和SQl语句:


点击查看更多内容
TA 点赞

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

评论

作者其他优质文章

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

100积分直接送

付费专栏免费学

大额优惠券免费领

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

举报

0/150
提交
取消