随笔分类 -  数据库(sql 与mysql 和mongodb还有 redis)

关于一些数据库的从新书写。
摘要:前言 简单整理一下redis。 正文 为什么使用redis? 速度快 1.1 内存执行 1.2 c语言编写,速度相对快一些 1.3 单线程,比较符合这种存储模式 2 丰富的数据结构 3 丰富的功能机制 -3.1 提供键过期机制,提供了缓存功能。 -3.2 提供发布订阅功能,用来实现消息系统。 -3. 阅读全文
posted @ 2021-08-14 20:50 敖毛毛 阅读(92) 评论(0) 推荐(0)
摘要:前言 锁从大的方面可以分为: 1.全局锁 2.表锁 3.行锁 正文 全局锁 全局锁就是对整个数据加上读锁。 在mysql 中,加入全局锁的命令就是: Flush tables with read lock(FTWRL) 这个时候会让整个数据库处于只读状态,之后其他线程的数据更新、数据定义语句和更新类 阅读全文
posted @ 2021-06-25 09:44 敖毛毛 阅读(145) 评论(0) 推荐(0)
摘要:前言 简单介绍一下事务隔离的基本 正文 Read Uncommitted(未提交读) 这个就是读未提交。就是说在事务未提交的时候,其他事务也可以读取到未提交的数据。 这里举一个例子,还是前一篇的例子。 假如一个张表A=500,B=300,(500,300)有一个事务a和一个事务b,a事务是给A增加1 阅读全文
posted @ 2021-06-13 07:45 敖毛毛 阅读(247) 评论(0) 推荐(0)
摘要:前言 简单整理一下事务。 正文 事务有四大特性: 1.原子性(atomicity) 一个事务必须被视为一个不可分割的最小单元。 2.一致性(consistency) 数据库总是从一个一致性的状态转换到另一个一致性的状态。 很多人对事务的一致性和原子性可能会有偏差。要理解这个东西呢,首先要抛开mysq 阅读全文
posted @ 2021-06-12 16:41 敖毛毛 阅读(237) 评论(0) 推荐(1)
摘要:前言 对于后端开发来说,打交道最多的应该是数据库了,因为你总得把东西存起来。 或是mongodb或者redis又或是mysql。然后你发现一个问题,就是他们都有日志系统,那么这些日志用来干什么的呢? 举两个例子,回滚和同步。 回滚,这里的回滚是比如说一条语句增加了1,然后再减一吗?这里的回滚操作并不 阅读全文
posted @ 2021-06-11 23:23 敖毛毛 阅读(329) 评论(0) 推荐(0)
摘要:前言 准备整理mysql的基础篇了,前面整理了sql语句序列的的《sql 语句系列(八百章)》,感觉很多用不上,就停下来了,后续还是会继续整理。 mysql 基础篇主要是对一些基础进行整理,同时望请大佬能够指点一二。之所以整理mysql,而不是sql server,一个是因为sql server 相 阅读全文
posted @ 2021-06-09 08:20 敖毛毛 阅读(548) 评论(0) 推荐(1)
摘要:前言 关于oracle 数据库如何连接,我一开始以为和mysql 和 sql server一样,写好连接语句然后调用相应的dll。 知道我遇到了两个错误: 1.64位程序不能去驱动32位客户端 2.ORA-06401: NETCMN: 无效的驱动程序指示符 第一个可以在iis 中的应用池配置32位程 阅读全文
posted @ 2020-10-30 08:00 敖毛毛 阅读(1146) 评论(0) 推荐(0)
摘要:前言 前天面试了一家公司,平时看一本redis书的也使用redis,对里面的东西也基本了解,结果回答的时候居然回答了只是使用了(因为认为是redis是运维的东西,做的东西多,所以忘了,好吧这是借口),因为害怕被继续问,所以说。。。。 基础的还是要快速回答出来的,前车之鉴啊。当然下面的面试题中会加入自 阅读全文
posted @ 2020-09-19 14:39 敖毛毛 阅读(464) 评论(0) 推荐(0)
摘要:前言 简单介绍一下,在mysql 优化系列中会重新介绍,仅仅是留个印象。 悲观锁和乐观锁其实都是概念性问题。 正文 悲观锁: 悲观锁,正如其名,具有强烈的独占和排他特性。 它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处 阅读全文
posted @ 2020-08-27 12:09 敖毛毛 阅读(141) 评论(0) 推荐(0)
摘要:前言 有些人认为数据库拆分或者数据库表拆分是数据库大,或者数据多而形成的,这是不完全的,也可能是当时设计和预想的不一样,比如说当时设计一个功能的时候把这个功能放在主库中,认为是一个亮点,后来这个功能居然是滑铁卢,然后就丢去了分库中。 实际上,数据库拆分是数据库优化最显著的一种方式,针对于数据库设计缺 阅读全文
posted @ 2020-08-26 16:14 敖毛毛 阅读(432) 评论(0) 推荐(0)
摘要:前言 介绍mysql 锁的机制。 正文 锁类型 读锁,是一种共享锁,s锁,允许一个事务是读取一行,阻止其他事务获取相同的数据集的排他锁。 注:排它锁的意思就是说只能加相同的锁,不能加不同的锁,比如都加共享锁,也就是说大家可以都读取。 假如事务A对数据项Z进行s锁,那么事务B只能添加s锁,而不能添加互 阅读全文
posted @ 2020-08-26 14:37 敖毛毛 阅读(160) 评论(0) 推荐(0)
摘要:前言 经过了前面的一系列理论,那么用一个例子去看一下吧。 正文 EXPLAIN SELECT t3.emp_no,t3.first_name,(select t4.last_name from temployees t4 where t4.emp_no=t3.emp_no) AS last_name 阅读全文
posted @ 2020-06-14 22:46 敖毛毛 阅读(189) 评论(0) 推荐(0)
摘要:正文 简介: Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。 Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。 Redis不仅仅支持简单的key- 阅读全文
posted @ 2020-06-08 17:20 敖毛毛 阅读(512) 评论(0) 推荐(0)
摘要:前言 紧接上文。 正文 type type字段有如下类型: 1.all 2.index 3.rang 4.ref 5.eq_ref 6.const,system 7.null 最好到最差的顺序为: system>const>eq_red>ref>range>index>all 优化的标准为至少达到r 阅读全文
posted @ 2020-06-02 23:58 敖毛毛 阅读(222) 评论(0) 推荐(0)
摘要:前言 在七种介绍了explain这东西,那么具体来看下它是如何来运行的吧。 正文 id 来看一条语句:EXPLAIN select * from departments,dept_emp,employees 当id相同的时候:代表在同一队列里面加载,就是说他们加载不是并发的,而是有顺序的。 然后一个 阅读全文
posted @ 2020-05-31 22:30 敖毛毛 阅读(168) 评论(0) 推荐(0)
摘要:前言 做开发的我们晓得一个道理,就是说不是说你说这东西性能稳定就是性能稳定,你说发版本就发版本,这个是测试部门说了算的。 那么索引优化的关键也就是说一个我们来逐步调优,调优就要知道我们这条语句在mysql到底干了啥,这个时候我们就要看优化器。 正文 1.mysql 中有专门负责select 语句中的 阅读全文
posted @ 2020-05-31 17:47 敖毛毛 阅读(208) 评论(0) 推荐(0)
摘要:前言 百度百科索引: 在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。 索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。 索引提供指向存储在表的指定列中 阅读全文
posted @ 2020-05-31 08:55 敖毛毛 阅读(275) 评论(0) 推荐(0)
摘要:前言 总结一下其中join连接。 正文 又到了盗图时刻: 上面标记好了顺序。 第一种: select * from A a left join B b on a.key=b.key 这里解释一下,这里就是A B 之间用A key 去做笛卡尔积,以左边A为主。 第二种: select * from A 阅读全文
posted @ 2020-05-30 22:40 敖毛毛 阅读(332) 评论(0) 推荐(0)
摘要:前言 盗图: 其实在复杂的语句中,需要我们逐步去分析,然后呢,我们了解一些优化器到底是如何帮我们优化的,就知道到底是mysql怎么执行代码。 我把以前的丢了,后续补全。 阅读全文
posted @ 2020-05-30 20:15 敖毛毛 阅读(157) 评论(0) 推荐(0)
摘要:前言 什么是性能下降? 其实就是代码运行的环境变了,那么环境变化是什么? 比如cpu上升了,内存满了。有或者表中数量增加了,量变了。 其实这些是dba干的,但是呢,我们也需要去了解下,并且优化我们的code。 正文 简单介绍一个量大的情况,那么这个时候我们可能会建立索引,其实也不是量大去建立索引,而 阅读全文
posted @ 2020-05-30 14:59 敖毛毛 阅读(315) 评论(0) 推荐(0)