韩顺平mysql优化笔记_mysql 优化学习笔记

笔记传智播客韩顺平老师mysql优化视频课程:

A、表的设计(3范式)

符合一范式,才能满足二范式,进一步满足三范式

关系性数据库:oracle/mysql/db2/informix/sysbase/sql server

非关系型数据库:(特点:面向对象和集合)

Nosql数据库:mongodb(特点是面向文档,介于关系和非关系型数据库)

一范式 : 表的列不能再分割,信息本身可以明确表示某个信息。(关系性数据库自动满足)如:

二范式:表中的数据唯一,不重复,(只要设置主键就可以满足,一般不含业务逻辑,自增长)

三范式:表中无冗余数据,如可以推导出来,就无需添加字段存放。

比如: 个人资料  和  个人班级  ,个人资料里面有姓名字段就无需再个人班级里面添加姓名字段。

注意:不一定要完全满足三范式,具体情况讨论,多在一对多情况,比如 某相册全部浏览量,不是每次调用都去查询叠加一次每张相片浏览量,在相册添加一个浏览量字段就好

B、sql语句优化

1.mysql数据库运行状态如何查询(如何查询用了多少时间、次数、连接)控制台

Show satus; 可以查看所有查询状态

Show status like ‘uptime’

Show status like ‘com_select’ ;

Show[session|global] status like ...如果不写[session|global],默认是session会话,mysql启用到现在用global;

2.慢查询(mysql默认是10s)

查询慢查询时间:show variables like ‘long_query_time’;

修改慢查询时间:set long_query_time=1;

(跳过04.05视频慢查询)

C、添加适当索引(index)

数据库 mysql/mysql server5.5/data/temp  有些表有一个文件,一些有三个文件

Admin.frm(结构)  admin.myd(数据)admin.myi(索引)

原理:从数据库读取数据 select * from article where id=500; 数据库服务器会遍历表单内索引数据返回多条数据。。

添加索引后是按二叉树算法进行。。。进行次数c和总检索数目n关系是log2 n = c

普通

主键

唯一(unique)

全文(如百度)

复合

D、分表(水平分割、垂直分割)

E、读写分离(读分到多个操作,写update/delete/add)

F、存储过程

数据库(oracle、mysql、db2)三次结构[模块化编程、可以提高速度]

ca588d22510340452e6427366266e2d5.png

php程序     数据库管理系统 (编译、执行、缓存)    数据库

通常是 php程序传递到 数据库管理系统,系统编译-执行-缓存,从数据库读取数据返回给php,但php程序可以直接从数据库管理系统读取编译好的数据。

G、对mysql配置优化【配置最大并发数,调整缓存大小】

My.ini-- max_connection

H、服务器硬件升级

I、定时清除不需要数据,定时进行碎片整理【myisam尤其注重】

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
Mysql基础,MySQL数据库的安装和配置,mysql数据库的三层结构介绍 Mysql基础 I 说明数据库的价值 I mysql数据库的基础 I MySQL数据库的安装和配置 II mysql的基本使用 II mysql数据库的三层结构介绍 IV 表-表行-表列 IV sql语句的分类 V 创建数据库 VI 基本介绍 VI 快速入门案例 VI 看一下字符集和校验规则的区别 VII 数据库操作相关技术 X 显示数据库 X 显示创建数据库的指令 X 删除数据库 X 查看当前mysql数据库连接进程情况 XI 如何备份,恢复数据库 XI 数据库的修改操作 XIII 表的创建 XV 基本语法和介绍 XV 创建表的快速入门 XV 创建表的说明 XVI mysql的数据类型(重点) XVII 基本介绍 XVII 数值类型的讲解 XVII 关于zerofill 的说明 XIX 数值型(bit)的使用 XX 小数类型 XXI float (M,D) XXI decimal 类型的讲解 XXII 关于float 和 decimal的区别,我们应该选择哪个数据类型 XXII 字符串的使用 XXIII 日期和时间类型 XXVII Enum, SET类型 XXVII 作业评讲 XXIX 如何让中文对齐显示 XXXI 修改表(重点) XXXIII 基本介绍 XXXIII 快速入门学习案例 XXXIII 关于在控制台中,使用mysql的帮助手册 XXXV 数据表的c(create)r(read)u(update)d(delete)操作(insert/update/delete) XXXVII insert 语句 XXXVII 添加的练习题(综合练习) XL update 语句的讲解 XLIV delete 语句 XLVI 查询表 XLIX 基本使用 XLIX 具体使用 XLIX 对列进行运算和别名操作 L select 的 where子句的使用 LI order by子句的使用 LIV count使用 LVI sum 的使用 LVII avg 的使用 LVIII max 和 min LIX group by 子句的使用 LX mysql函数 LXIII mysql日期函数 LXIII 基本介绍 LXIII 第一组函数 LXIII 第二组函数 LXIV 第三组函数 LXVII 字符串函数 LXX 基本介绍 LXX 基本使用 LXX 数学函数 LXXII 流程控制函数 LXXV 其它函数的使用 LXXVII php 操作 mysql的实例 LXXVIII mysql查询加强 LXXX mysql查询加强-多表查询 LXXX 创建了三张表 LXXX mysql表的基本操作 LXXXI 使用算术表达式 LXXXI where子句的加强 LXXXII 逻辑运算符加强 LXXXIII mysql分页查询 LXXXV 数据分组-max,min,avg,sum,count加强 LXXXVI group by 和 having 的加强 LXXXVI 复杂查询 XC 基本介绍-为什么需要多表查询 XC 快速入门案例 XC 自连接 XCII 子查询 XCIV 基本介绍: XCIV 子查询的分类 XCIV 案例说明 XCIV all/any关键字的使用 XCV 多列子查询 XCVII 在from 子句中使用子查询 XCVII 自我复制(蠕虫复制) XCIX 删除某个表中的重复记录 C 合并查询 CI 表的内连接和外连接 CIII 基本介绍 CIII 内连接 CIII 外连接 CIII 外连接的分类 CIII 左外连接 CIII 右外连接 CV 课堂练习题 CV 表的约束 CVII 基本介绍 CVII 主键约束 CVII not null CIX unique 约束 CX 外键 CX 案例说明 CXI 关于使用外键的注意事项 CXII check约束 CXIII 约束的综合练习题 CXIII 练习我们的约束的修改 CXV 删除约束 CXVI 自增长 CXVIII 基本介绍 CXVIII 快速入门案例 CXVIII 自增长的使用注意事项 CXIX 索引 CXXI 基本介绍 CXXI 索引的分类 CXXI 先看看一个海量表,在查询的时候会有什么问题? CXXI 先构建一个海量表(8000000) CXXI 当数据海量时,问题和解决方法 CXXIV 索引的原理 CXXV 创建索引 CXXV 主键索引的创建 CXXV 唯一索引的创建 CXXVI 普通索引的创建 CXXVII 全文索引的创建 CXXVIII 查询索引 CXXX 删除索引 CXXX 修改索引 CXXXI 创建索引的基本原则 CXXXI 事务 CXXXII 基本介绍 CXXXII 如何在mysql控制台使用事务 CXXXIII 如何在php程序中控制事务 CXXXV 事务的隔离级别 CXXXVI 事务的隔离级别概述 CXXXVI 画图说明事务的隔离级别的概念和基本使用 CXXXVII 可串行化的隔离级别最高,如图 CXXXVII 如何设置事务的隔离级别 CXXXVIII 如何修改默认的隔离级别 CXXXIX 事务隔离级别的练习题 CXXXIX 事务的四个特性(acid) CXXXIX mysql表类型和存储引擎 CXLI 基本介绍 CXLI 存储引擎的比较图 CXLI 各个存储引擎的特点说明 CXLII 如何选择适当的存储引擎 CXLIII 修改表的存储引擎指令 CXLIII 视图(view) CXLIV 基本概念 CXLIV 视图的基本使用 CXLIV 视图最佳实践 CXLV 使用视图的好处 CXLVI 视图的练习题 CXLVI mysql用户管理 CXLVIII mysql用户管理的必要性 CXLVIII mysql用户存放在 user表 CXLVIII mysql用户的创建 CXLIX mysql用户的删除 CXLIX 如何对mysql用户修改密码 CXLIX mysql数据库的权限有 CL 给mysql用户赋权限 CLI 如何回收权限 CLII mysql用户的细节说明 CLIII 如何查看某个用户分配了哪些权限 CLIII。
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值