Mysql数据库的优化技术
对mysql优化时一个综合性的技术,主要包括
a: 表的设计合理化(符合3NF)
b: 添加适当索引(index) [四种: 普通索引(什么都不写)、主键索引(有一个主键,效率最高)、唯一索引unique、全文索引(对文本的索引)、组合索引]
c: 分表技术(水平分割、垂直分割)
d: 读[select]写[写: update/delete/add]分离
e: 存储过程 [比普通的sql要快,模块化编程,可以提高速度]

数据库(oracle,mysql,db2,sqlserver)的3层结构:数据库是文件,dbms来操作文件。
dbms拿到客户端的sql语句要先编译,在执行,执行后返回数据时候要缓存一下。直接发sql语句就要编译,编译耗时。把经常用的sql语句写成存储过程。存储过程是编译好的,客户端直接调用存储过程,就不用编译要快。存储过程的移植性不好。

f: 对mysql配置优化 [配置最大并发数my.ini, ,一般1000就可以,太大内存不够。还有调整缓存大小 ]
g: mysql服务器硬件升级
h: 定时的去清除不需要的数据,定时进行碎片整理(尤其是存储引擎是MyISAM的,不清理会出问题) 

什么样的表才是符合3NF (范式)
表的范式,是首先符合1NF, 才能满足2NF , 进一步满足3NF,最高6范式。1NF: 即表的列的具有原子性,不可再分解,即列的信息,不能分解, 只有数据库是关系型数据库(mysql/oracle/db2/informix/sysbase/sql server),就自动的满足1NF☞ 数据库的分类
关系型数据库: mysql/oracle/db2/informix/sysbase/sql server
非关系型数据库: (特点: 面向对象或者集合)
NoSql数据库: MongoDB(特点是面向文档)2NF: 表中的记录是唯一的, 就满足2NF, 通常我们设计一个主键来实现3NF: 即表中不要有冗余数据, 就是说,表的信息,如果能够被推导出来,就不应该单独的设计一个字段来存放. 比如下面的设计就是不满足3NF。classname和depart可以推出来。

反3NF : 但是,没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当保留冗余数据。具体做法是: 在概念数据模型设计时遵守第三范式,降低范式标准的工作放到物理数据模型设计时考虑。降低范式就是增加字段,允许冗余(一对多都可能遇到)。
表设计要是一个通路,各个表都可以互相查到。

转载于:https://www.cnblogs.com/yaowen/p/8204217.html

mysql08---优化01相关推荐

  1. 背包问题,为什么使用倒叙、顺序分别优化01背包和完全背包.

    一.背景 0-1背包与完全背包的唯一的区别在于0-1背包每个物品只能使用一次,但是完全背包可以重复使用. 二.0-1背包空间优化 假设物品编号1~n i号物品重量w[i] i号物品价值v[i] 以下分 ...

  2. Oracle海量数据优化-01分区的渊源

    思维导图 概述 DELETE与系统资源 delete 操作消耗的资源 truncate 和 drop 操作消耗的资源 DML操作会随着数据量的增加消耗的资源也会相应的增加 DELETE与释放空间 思维 ...

  3. 【项目优化01】使用Git管理项目及使用redis缓存短信验证码,菜品以及套餐数据

    文章目录 1. 使用Git管理项目 2. redis缓存 2.1 使用redis缓存短信验证码 2.2 使用redis缓存菜品数据 2.3 使用Spring Cache缓存套餐数据 1. 使用Git管 ...

  4. 前端性能优化学习 05 请求和响应优化 01(DNS 解析、HTTP 长连接、HTTP2、避免重定向、压缩传输的数据资源)

    请求和响应优化 目的:更快的内容到达时间. 核心思路: 更好的连接传输效率 更少的请求数量 更小的资源大小 合适的缓存策略 最佳实践: 减少 DNS 查找:每次主机名的解析都需要一次网络往返,从而增加 ...

  5. javascript优化--01高质量编码

    javascript的浮点数: Javascript的数字都是双精度浮点数: 64位编码数字: 能表达53位精度的整数: 进行位运算时会隐式地转化为32位整数(0,1序列)后计算: 浮点数运算可能会有 ...

  6. 简单为蒲公英在线教学系统进行优化-01

    屏蔽视频播放器下载按钮 <video id="videotag" controls="controls" autoplay="autoplay& ...

  7. 性能优化01 - 图片压缩 (NDK 哈夫曼算法压缩)

    libjpeg-turbo | Main / libjpeg-turbo libjpeg编译文档 libjpeg-turbo/BUILDING· GitHub Mac环境编译 libjpeg压缩库 c ...

  8. 0-1背包问题的一维数组优化解析

    [问题描述] 常见的0-1背包问题,多使用二维数组来实现.二维数组实现时,常用的状态转移方程为: c[i][j]=c[i-1][j], j<vol[i] c[i][j]=max(c[i-1][j ...

  9. ARM NEON 优化

    确认处理器是否支持NEON cat /proc/cpuinfo | grep neon 看是否有如下内容 Features : swp half thumb fastmult vfp edsp neo ...

  10. 【量化交易】组合优化三部曲:换手率和alpha模型换手约束下的最优模型时变IC下的多空/多头最优组合换手率

    前言 单因子模型,考虑策略风险(即IC时序波动),最大化风险调整后收益的主动增强组合优化 01 无约束下,多空最优组合的换手率的解析解 02 跟踪误差约束下,多头最优组合的换手率的数值优化 03 跟踪 ...

最新文章

  1. RGB Color Codes Chart
  2. 【转帖】OnPreRender Render的区别
  3. 报错:java.lang.IllegalArgumentException: non null key required 错误
  4. 移动端网站建设——一如既往地简洁大方
  5. java中删除最大的数,【Java练习】删除字符串中字符个数最少的字符
  6. 以朋友圈为例,腾讯资深架构师揭秘鹅厂大数据平台是怎样运营的
  7. 全是干货:MBR分区结构以及GPT分区结构
  8. 《HTML与CSS入门经典(第8版)》——2.5 测试Web内容
  9. DB2数据库问题总结
  10. 3dmax中如何导出多个动画
  11. 单片机 STC8H1K08-36I TSSOP20 - 低压检测
  12. 普歌+计算机网络--滑动窗口协议
  13. 世界上著名的三大检索工具
  14. 现有的 NFT 协议
  15. Ubuntu16.04 安装LSD-SLAM
  16. 【Apache】配置.htaccess将主域名301重定向到www域名
  17. 公司邮箱怎么注册?公司企业邮箱怎么登录?
  18. 专题:2019世界移动通信大会(MWC)精彩纷呈,中国企业各出大招
  19. 无线无法解释服务器域名,科学网—Ubuntu 17.10 WIFI无线网络无法解析DNS域名的解决方法 - 徐勇刚的博文...
  20. 获取淘宝价格区间l-r的商品a的详细信息(商品名等)

热门文章

  1. 【钢铁缺陷检测算法】数据探索
  2. 科学和工程中的信号处理
  3. bootstrap基础样式学习(二)——栅格
  4. redis命令_INCR
  5. Shell脚本中替换字符串等操作
  6. js并列排名之div图片加载
  7. HTML- 锚点实例
  8. ieda使用 在jsp页面中,有时候会出现不能智能显示方法 idea pageContext.setAttribute...
  9. vim ,vi总是卡死,终于找到原因了。
  10. ARTS打卡第14周