1. 数据库的安装

2. 数据库设计需要注意什么

3. SQL语句优化

4. 怎样处理慢查询?

5. 怎样更好的利用数据库索引?

6. 事务隔离级别有哪些?怎么实现的?

7. 数据库锁有哪些?

8. 如何保证数据库高可用?

9. 如何保证数据库高并发?

10. 什么样的数据库缓存方案最合理?

11. innodb和myisam对比

12. 有哪些好用的数据库中间件?

13. 数据库日志介绍

14. 数据库主从复制

mysql 数据主从的实现方式:RBR,SBR,MBR

2. 索引:

B+Tree

1)一个节点存储多个数据,这样的好处,是可以充分利用预读功能。

2)节点上是不存储数据的(这里是指不存储指向数据真实地址的指针或主键地址),所有的数据都在叶子节点上。并且每个叶子节点有一个指向下一个叶子节点的指针,这样可以方便遍历。

索引分类:

B-Tree索引:

哈希索引(hash index):哈希索引基于哈希表实现,只有精确匹配索引所有列的查询才有效。结构十分紧凑,查询速度非常快。

空间数据索引:

全文索引:

innodb索引分类:

聚簇索引(clustered index):1)  有主键时,根据主键创建聚簇索引;  2)  没有主键时,会用一个唯一且不为空的索引列做为主键,成为此表的聚簇索引;  3) 如果以上两个都不满足那innodb自己创建一个虚拟的聚集索引

辅助索引:在聚簇索引之上创建的索引称之为辅助索引,辅助索引访问数据总是需要二次查找。辅助索引叶子节点存储的不再是行的物理位置,而是主键值。

复合索引:由多列创建的索引称为符合索引,在符合索引中的前导列必须出现在where条件中,索引才会被使用

前缀索引:当索引的字符串列很大时,创建的索引也就变得很大,为了减小索引体积,提高索引的扫描速度,就用索引的前部分字串索引,这样索引占用的空间就会大大减少,并且索引的选择性也不会降低很多。而且是对

BLOB和TEXT列进行索引,或者非常长的VARCHAR列,就必须使用前缀索引,因为MySQL不允许索引它们的全部长度。

参见:https://blog.csdn.net/bigtree_3721/article/details/51335479

    作者:田木木

    

    

    本博客中未标明转载的文章归作者田木木和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

mysql知识点汇总的更多相关文章

  1. mysql知识点汇总四

    1.表的垂直分割 “垂直分割”是一种把数据库中的表按列变成几张表的方法,这样可以降低表的复杂度和字段的数目,从而达到优化的目的.(以前,在银行做过项目,见过一张表有100多个字段,很恐怖) 示例一:在 ...

  2. [转]10分钟梳理MySQL知识点:揭秘亿级高并发数据库调优与最佳实践法则

    转:https://mp.weixin.qq.com/s/RYIiHAHHStIMftQT6lQSgA 做业务,要懂基本的SQL语句: 做性能优化,要懂索引,懂引擎: 做分库分表,要懂主从,懂读写分离 ...

  3. MySQL笔记汇总

    [目录] MySQL笔记汇总 一.mysql简介 数据简介 结构化查询语言 二.mysql命令行操作 三.数据库(表)更改 表相关 字段相关 索引相关 表引擎操作 四.数据库类型 数字型 字符串型 日 ...

  4. nginx几个知识点汇总

    WHY? 为什么用Nginx而不用LVS? 7点理由足以说明一切:1 .高并发连接: 官方测试能够支撑 5 万并发连接,在实际生产环境中跑到 2 - 3 万并发连接数.?2 .内存消耗少: 在 3 万 ...

  5. MySQL登录汇总

    --MySQL登录汇总 --------------------2014/5/17 1. ERROR 1045错误ERROR 1045 (28000): Access denied for user ...

  6. python全栈开发 * 10知识点汇总 * 180612

    10 函数进阶 知识点汇总 一.动态参数 形参的第三种1.动态接收位置传参 表达:*args (在参数位置编写 * 表⽰接收任意内容) (1)动态位置参数def eat(*args): print(a ...

  7. 清华大学OS操作系统实验lab1练习知识点汇总

    lab1知识点汇总 还是有很多问题,但是我觉得我需要在查看更多资料后回来再理解,学这个也学了一周了,看了大量的资料...还是它们自己的80386手册和lab的指导手册觉得最准确,现在我就把这部分知识做 ...

  8. MySQL优化汇总

    1)mysql优化汇总,转载自网络

  9. c++ 函数知识点汇总

    c++ 函数知识点汇总 swap函数 交换两个数组元素 比如 swap(a[i],a[j]); 就是交换a[i] 和 a[j] 的值 strcpy() 复制一个数组元素的值到另一个数组元素里 strc ...

随机推荐

  1. vi编辑器常用操作

    vi的三种模式 1.命令模式 2.编辑模式 3.末行模式(命令模式下,按":"即可进入末行模式) 命令模式到编辑模式:插入命令i,附加命令a,打开命令o,修改命令c,取代命令r,替 ...

  2. webpack实现开发、测试、生产等环境的打包切换

    使用webpack构建的工程,在开发过程中不同环境的配置不同,在各种环境的打包切换过程中需要手动修改相关配置达到预期目的.但是每次都手动修改会比较麻烦,本文简单介绍如何通过对webpack进行配置,实 ...

  3. MySQL错误码

    MySQL运行异常时,查看服务日志可看到error number,该错误码为系统调用出错码,具体如下. errno.00 is: Success    成功 errno.01 is: Operatio ...

  4. Mybatis_1(认识)一个简单的HelloWorld

    1. 介绍: MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架. MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索. MyBatis可以使用简单的XM ...

  5. Node.js_文件系统 FS

    文件系统 FS——File System 所谓的文件系统,就是对计算机中的文件进行增.删.查.改等操作 是一个服务器的基础 node 通过核心 FS 模块来操作文件系统 简单写 // 1. 导入 fs ...

  6. Android adb 串口调试

    adb (串口输入) echo 1 > /sys/class/remount/need_remount; mount -o rw,remount /system                  ...

  7. Python自学知识点----Day01

    Linux 次方运算符** 操作系统:1).直接操纵硬件 2).将操纵硬件封装成系统调用,利用应用程序进行调用 操作系统:windows  用户群体大 macos      适用开发人员 Linux  ...

  8. [daily] 如何用emacs+xcscope阅读内核源码

    假设 首先我假设: 你已经学会了使用emacs. 同时也学会了使用cscope. 读过cscope官网上,关于emacs的使用指引. 它的指引就是请你去阅读xcscope.el的源码,当然这无可厚非, ...

  9. python摸爬滚打之day28----黏包处理

    1.缓冲区和subprocess模块 1.1  缓冲区( 当send()内容超过输入缓冲区大小或recv()接收内容超过输出缓冲区大小时旧版本(py3.5以前)是会直接报错的, py3.5以后如果出错 ...

  10. CF1093F Vasya and Array

    题目链接:洛谷 以后还是要多打CF,不然就会错过这些很好的思维题了.我dp学得还是太烂,要多总结. 首先$len=1$就直接输出0. 我们考虑$dp[i][j]$表示前$i$个数的答案,而且第$i$个 ...