
数据库
晨初听雨
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SQL语言的分类
SQL语言的分类SQL语言,是结构化查询语言(Structured Query Language)的简称。SQL语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。SQL语言共分为四大类:DQL:Data Query Language 数据查询语言DML:Data Manipulation Language 数据操纵语...原创 2018-10-13 19:17:23 · 265 阅读 · 0 评论 -
缓存穿透,缓存雪崩,缓存击穿的解决方案
一、缓存工作流程我们首先来看看我们是如何用到缓存的?前台请求,后台先从缓存中取数据,取到直接返回结果,取不到时从数据库中取,数据库取到更新缓存,并返回结果,数据库也没取到,那直接返回空结果。了解了缓存的工作流程之后,我们再来看看缓存有可能会有什么问题?二、缓存穿透缓存穿透是什么?缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起为id为“-1”的数据或i...原创 2019-06-30 19:14:42 · 266 阅读 · 0 评论 -
Redis过期键删除策略和内存回收策略
1、如果一个键过期了,那么它什么时候会被删除呢?这个问题有三种可能的答案,它们分别代表了三种不同的删除策略:定时删除:在设置键的过期时间的同时,创建一个定时器(Timer),让定时器在键的过期时间来临时,立即执行对键的删除操作。 惰性删除:放任键过期不管,但是每次从键空间中获取键时,都检查取得的键是否过期,如果过期的话,就删除该键;如果没有过期的话就返回该键。 定期删除:每隔一段时间,...原创 2019-07-01 16:22:44 · 697 阅读 · 0 评论 -
MyISAM和InnoDB索引实现的区别
我们都知道MyISAM和InnoDB索引都是用B+树实现的,尽管如此他们还是有不少区别的。MyISAM索引实现MyISAM引擎使用B+Tree作为索引结构,叶节点的data域存放的是数据记录的地址。下图是MyISAM索引的原理图:这里设表一共有三列,假设我们以Col1为主键,则上图是一个MyISAM表的主索引(Primary key)示意。可以看出MyISAM的索引文件仅仅...原创 2019-07-06 10:06:55 · 335 阅读 · 0 评论 -
MySQL索引详解
一、什么是索引 索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。更通俗的说,数据库索引好比是一本书前面的目录,能加快数据库的查询速度。上述SQL语句,在没有索引的情况下,数据库会遍历全部200条数据后选择符合条件的;而有了相应的索引之后,数据库会直接在索引中查找符合条件的选项。如果我们把SQL语句换成“SELECT * F...原创 2019-02-13 11:51:30 · 317 阅读 · 0 评论 -
MySQL的逻辑架构
MySQL的逻辑结构图将整个MySQL分成四层,图如下: 第一层(连接层):所包含的服务并不是MySQL所独有的技术。它们都是服务于C/S程序或者是这些程序所需要的 :连接处理,身份验证,安全性等等第二层(服务层):这是MySQL的核心部分。通常叫做 SQL Layer。在 MySQL据库系统处理底层数据之前的所有工作都是在这一层完成的,包括权限判断, sql解析,行计划优化, query...原创 2019-02-13 09:56:32 · 293 阅读 · 0 评论 -
MyISAM和InnoDB的区别
概述InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持以及外部键等高级数据库功能。以下是一些细节和具体实现的差别:差别一:Myisam...原创 2019-02-15 02:17:12 · 485 阅读 · 0 评论 -
MySQL锁机制
一、简述MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制。比如,MyISAM和MEMORY存储引擎采用的是表级锁;BDB存储引擎采用的是页面锁,但也支持表级锁;InnoDB存储引擎既支持行级锁,也支持表级锁,但默认情况下采用行级锁。MySQL这3种锁的特性可大致归纳如下:(1)表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。...原创 2019-02-15 01:49:27 · 200 阅读 · 0 评论 -
数据库事务的四大特性以及隔离级别
本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:⑴ 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚。因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。⑵ 一致性(Consistency) 一致性是指事务...原创 2019-01-26 11:23:18 · 546 阅读 · 0 评论 -
Oracle中手动创建emp表和dept表
以下的gw为用户名,把gw改成自己的用户名即可使用CREATE TABLE gw.DEPT(DEPTNO NUMBER(2) CONSTRAINT PK_DEPT PRIMARY KEY,DNAME VARCHAR2(14),LOC VARCHAR2(13));CREATE TABLE gw.EMP(EMPNO NUMBER(4) CONSTRAINT PK_EMP PRIMAR...原创 2018-10-16 16:45:56 · 3827 阅读 · 1 评论 -
Oracle中的常用函数
1、数值型常用函数 函数 返回值 样例 显示 ceil(n) 大于或等于数值n的最小整数 select ceil(10.6) from dual 11 floor(n) 小于等于数...原创 2018-10-13 21:02:22 · 419 阅读 · 0 评论 -
Redis的五大数据类型以及常用命令
String(字符串)string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。string类型是Redis最基本的数据类型,一个键最大能存储512MB。Hash(哈希)Redis hash 是一个键值对集合...原创 2019-01-29 16:34:43 · 866 阅读 · 0 评论