数据库
绘梦逐心
这个作者很懒,什么都没留下…
展开
-
数据结构优化索引基础知识(B-Tree、B+-Tree、hash、密集索引和稀疏索引的区别)
B-Tree定义1、根节点至少包括两个孩子2、树中每个节点最多含有m个孩子(m≥2)3、除根节点和叶节点之外,其他每个节点至少含有ceil(m/2)个孩子4、所有的叶子节点都位于同一层B±Tree定义其定义基本与B-Tree相同除了:1、非叶子节点的子树指针与关键字个数相同。2、非叶子节点的子树指针p[i],指向关键字值(K[i],K[i+1])的子树。3、非叶子节点仅用来做...原创 2019-02-21 16:53:14 · 404 阅读 · 0 评论 -
索引额外问题(定位优化慢查询、最左匹配)
为什么要使用索引?因为索引能够让我们避免全表扫描去查找数据。提升检索效率什么样的信息能成为索引主键为一键等只要能够让数据呈现出一定区分性的字段索引的数据结构主流是B+树,还有哈希结构、BitMap等。其中MySQL不支持BitMap,同时基于InnoDB和MyISAM的MySQL不显示支持Hash衍生出来的问题,以mysql为例如何定位并优化慢查询Sql1、根据...原创 2019-02-23 14:40:20 · 220 阅读 · 0 评论 -
锁模块之MyISAM与InooDB(锁方面的区别、事务并发访问引起的问题以及应如何避免、InooDB可重复读隔离级别下如何避免幻读)
MyISAM与InnoDB关于锁方面的区别:1 MyISAM默认用的是表级锁,不支持行级锁。2 InnoDB默认用的是行级锁,也支持表级锁。读锁也被称为共享锁。写锁又被称为排他锁加锁:lock tables ---- read|writeunlock tableslock in share mode上了写锁再上写锁、读锁需要等待。for update:就是为了加锁,即在当前线...转载 2019-02-23 21:06:34 · 392 阅读 · 0 评论 -
数据库基础语句和关键语句
基础语句1、显示所有数据库show databases;2、 删除数据库drop database dbName;3、 创建数据库create database [if not exists] dbName;(中括判断该数据不存在就可以创建)4、 切换、使用指定数据库use dbName;5、 显示当前数据库所有的表对象show tables;6、 显示表结构desc ...转载 2019-02-24 13:59:28 · 382 阅读 · 0 评论 -
Mysql数据库学习(一)
创建创建数据库 判断是否存在Create database if not exists db1Create database db3 character set gbk(指定字符集)创建db4数据库,判断是否存在并指定字符集为gbkCreate database if not exists db4 character set gbkDDL数据库修改:(修改数据库字符集)Alter...原创 2019-03-21 21:31:25 · 162 阅读 · 0 评论 -
MySQL数据库学习(二)
1、 多表查询需要消除无用的数据查询语法:多表查询的分类:内连接查询:隐式内连接:使用where条件消除无用的数据Eg:–查询所有员工信息和对应的部门信息Select * from emp,dept where emp.’dept_id’ = dept.’id’;–查询员工表的名称,性别,部门表的名称Select emp.name,emp.gender,dept.name fr...原创 2019-03-22 10:14:57 · 273 阅读 · 0 评论