首页新闻动态正文

数据库优化【黑马python培训】

更新时间:2022年11月16日 15时43分09秒 来源:黑马程序员论坛

黑马中级程序员课程

1、MySQL优化综合性技术
  • 表的设计合理化(符合3NF,有时也要进行反三范式操作)
  • 添加适当索引
  • 分表技术(水平分割、垂直分割)
  • 主从复制,读写分离
  • 存储过程(模块化编程,可以提高速度)
  • 对MySQL配置优化(配置最大并发数my.ini,调整缓存大小)
  • 系统应用优化等
  • 服务器的硬件优化

2、索引分类
  • 单值索引

  • 一个索引只包含单个列,一个表可以有多个单值索引,一般来说, 一个表建立索引不要超过5个

  • 唯一索引

  • 索引列的值必须唯一,但允许有空值

  • 复合索引

  • 一个索引包含多个列

  • 全文索引

  • MySQL全文检索是利用查询关键字和查询列内容之间的相关度进行检索,可以利用全文索引来提高匹配的速度。

3、MySQL语句正确使用索引
  • 全值匹配(最好)

  • 如:建立了三个索引,查询时最好都使用上三个索引

  • 最佳左前缀法则

  • 如果索引有多列,要遵守最左前缀法则,指的就是从索引的最左列开始 并且不跳过索引中的列

  • 计算、函数、类型转换会导致索引失效
  • 范围条件查询,右边索引失效
  • 使用不等于(!=或者<>)时无法使用索引
  • or引起索引失效
  • like引起索引失效

4、大批量数据分页操作优化
  • 没有优化的查询

  • SELECT * FROM logs1 LIMIT 500000,10;

  • 优化

  • 使用子查询优化方式1

select * from logs1 e inner join (SELECT id from logs1 limit 500000 ,10 ) et on e.id = et.id

    • 使用子查询优化方式2

select * from logs1 where id >=(SELECT id from logs1 limit 500000 , 1) limit 10

    • 使用id限定优化

  • 记录上一页最大的id号 使用范围查询,限制是只能使用于明确知道id的情况,不过一般建立表的时候,都会添加基本的id字段,这为分页查询带来很多便利



推荐了解热门学科

java培训 Python人工智能 Web前端培训 PHP培训
区块链培训 影视制作培训 C++培训 产品经理培训
UI设计培训 新媒体培训 产品经理培训 Linux运维
大数据培训 智能机器人软件开发




传智播客是一家致力于培养高素质软件开发人才的科技公司“黑马程序员”是传智播客旗下高端IT教育品牌。自“黑马程序员”成立以来,教学研发团队一直致力于打造精品课程资源,不断在产、学、研3个层面创新自己的执教理念与教学方针,并集中“黑马程序员”的优势力量,针对性地出版了计算机系列教材50多册,制作教学视频数+套,发表各类技术文章数百篇。

传智播客从未停止思考

传智播客副总裁毕向东在2019IT培训行业变革大会提到,“传智播客意识到企业的用人需求已经从初级程序员升级到中高级程序员,具备多领域、多行业项目经验的人才成为企业用人的首选。”

中级程序员和初级程序员的差别在哪里?
项目经验。毕向东表示,“中级程序员和初级程序员最大的差别在于中级程序员比初级程序员多了三四年的工作经验,从而多出了更多的项目经验。“为此,传智播客研究院引进曾在知名IT企业如阿里、IBM就职的高级技术专家,集中研发面向中高级程序员的课程,用以满足企业用人需求,尽快补全IT行业所需的人才缺口。

何为中高级程序员课程?

传智播客进行了定义。中高级程序员课程,是在当前主流的初级程序员课程的基础上,增加多领域多行业的含金量项目,从技术的广度和深度上进行拓展“我们希望用5年的时间,打造上百个高含金量的项目,覆盖主流的32个行业。”传智播客课程研发总监于洋表示。




黑马程序员热门视频教程【点击播放】

Python入门教程完整版(懂中文就能学会) 零起点打开Java世界的大门
C++| 匠心之作 从0到1入门学编程 PHP|零基础入门开发者编程核心技术
Web前端入门教程_Web前端html+css+JavaScript 软件测试入门到精通


分享到:
在线咨询 我要报名
和我们在线交谈!