database
fansenjun
这个作者很懒,什么都没留下…
展开
-
数据库相关知识
关系型数据库主要考点:如何设计一个关系型数据库了解数据库的各个模块:数据库最终的目的就是存储我们的 数据,因此数据库会有一个存储模块,来负责存储我们的数据,存储模块就类似我们的os系统,当数据持久化,存储到磁盘,如存储到机械硬盘说着ssd固态硬盘。有了存储系统之后,我们还有组织,使用这些数据,因此需要程序的实例,用逻辑结构映射出物理结构来,并且在程序中提供获取管理数据的方式,还有必...原创 2019-01-01 20:21:10 · 173 阅读 · 0 评论 -
数据库-优化索引-hash索引 BitMap索引
Hash索引有的数据库存储引擎还支持hash这种数据结构作为其索引,理论上hash索引的索引效率理论上要高于B+树索引 Hash索引的缺点仅仅能满足“=”,“in”,不能使用范围查询由于hash索引比较的是hash运算之后的hash值,所以只能用于等值的过滤,不能用于基于范围的查询,因为经过相应的hash算法处理之后的hash值的大小关系并不能保证与hash运算前的完全一样,比如上图...原创 2019-01-02 21:57:32 · 981 阅读 · 0 评论 -
密集索引和稀疏索引的区别
区别秘籍索引文件中的每个搜索码值都对应一个索引值 稀疏索引文件只为索引码的某些值建立索引项密集索引的定义:叶子节点保存的不只是键值,还保存了位于同一行记录里的其他列的信息,由于密集索引决定了表的物理排列顺序,一个表只有一个物理排列顺序,所以一个表只能创建一个密集索引稀疏索引:叶子节点仅保存了键位信息以及该行数据的地址,有的稀疏索引只保存了键位信息机器主键mysam存储引擎,不管...原创 2019-01-03 20:59:43 · 18797 阅读 · 0 评论 -
如何调优sql
如何定位并优化慢sql根据慢日志定位慢查询sql慢日志就是用来记录我们查询比较慢的sqlshow variables like %quer%;11:slow_query_log off 慢日志关闭2:slow_query_log_file 文件记录慢日志3:long_query_time sql执行多长时间会记录到慢日志文件中show status like '...原创 2019-01-07 21:23:54 · 838 阅读 · 0 评论 -
联合索引最左匹配原则的成因+索引为什么不是越多越好
联合索引多列组成的索引最左匹配原则假设我们有两列a,b,a和b是联合索引,他的顺序是a,b,我们在where语句中调用a=? and b=?的时候就会走联合索引,如果调用where a = ?的时候也会走索引,但是当我们使用where b = ?的时候就不会走这个联合索引成因:mysql创建复合索引的规则是首先会对复合索引的最左边,也就是索引中的第一个字段进行排序,在第一个...原创 2019-01-07 21:49:22 · 5932 阅读 · 1 评论 -
锁模块之MyISAM与InooDB关于锁方面的区别
锁模块常见问题:MyISAM与Innodb关于锁方面的却别是什么MyISAM默认使用的是表级锁,不支持行级锁 InnoDBmoren用的是行级锁,也支持表级锁MyISAM引擎在进行查询的时候,会自动为表加上一个读锁,而对数据进行增删改的时候,会为我们操作的表,加上一个表级别的写锁,当读锁没有被释放,另外一个session想要对同一个表加上写锁,他就会被堵塞,知道所有的读锁被释放位置。...原创 2019-01-08 21:32:30 · 706 阅读 · 1 评论