数据库
qican_7
这个作者很懒,什么都没留下…
展开
-
Redis、Memcache 和 MongoDB 的区别
Redis、Memcache 和 MongoDB 的区别本文转载自:原文链接MemcachedMemcached 的优点:Memcached 可以利用多核优势,单实例吞吐量极高,可以达到几十万 QPS(取决于 key、value 的字节大小以及服务器硬件性能,日常环境中 QPS 高峰大约在 4-6w 左右)。适用于最大程度扛量。支持直接配置为 session handle。Memcached 的局限性:只支持简单的 key/value 数据结构,不像 Redis 可以支持丰富的..转载 2020-11-19 08:56:40 · 290 阅读 · 0 评论 -
数据库设计
数据库设计的基本步骤按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为以下6个阶段1.需求分析2.概念结构设计3.逻辑结构设计4.物理结构设计5.数据库实施6.数据库的运行和维护数据库设计通常分为6个阶段1(需求分析:分析用户的需求,包括数据、功能和性能需求;2概念结构设计:主要采用E-R模型进行设计,包括画E-R图;3逻辑结构设计:通过将E-R图转换成表,实现从E-R模型到关系模型的转换;4数据库物理设计:主要是为所设计的数据库选择合适的存储结构和存取原创 2020-08-06 11:26:59 · 962 阅读 · 0 评论 -
数据库-并发问题与锁机制
数据库的锁机制读锁(共享锁)是读取操作创建的锁。其他用户可以并发读取数据,但任何事务都不能对数据进行修改(获取数据上的排他锁),直到已释放所有共享锁。如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排他锁。获准共享锁的事务只能读数据,不能修改数据。写锁(排他锁)如果事务T对数据A加上排他锁后,则其他事务不能再对A加任任何类型的封锁。获准排他锁的事务既能读数据,又能修...原创 2019-09-15 17:10:34 · 264 阅读 · 0 评论 -
数据库-分库分表
一. 数据切分关系型数据库本身比较容易成为系统瓶颈,单机存储容量、连接数、处理能力都有限。当单表的数据量达到1000W或100G以后,由于查询维度较多,即使添加从库、优化索引,做很多操作时性能仍下降严重。此时就要考虑对其进行切分了,切分的目的就在于减少数据库的负担,缩短查询时间。数据库分布式核心内容无非就是数据切分(Sharding),以及切分后对数据的定位、整合。数据切分就是将数据分散存...原创 2019-09-15 16:13:56 · 213 阅读 · 0 评论 -
数据库-读写分离
1 读写分离概述读写分离概述.png基本架构图:基本架构图.jpg2 适用场景适用场景.png读写分离不是银弹,并不是一有性能问题就上读写分离,而是应该先优化,例如优化慢查询,调整不合理的业务逻辑,引入缓存查询等只有确定系统没有优化空间后才考虑读写分离集群3 引入的系统复杂度问题问题一 主从复制延迟主从复制延迟.png问题二 分配机制...原创 2019-09-15 15:49:58 · 152 阅读 · 0 评论 -
数据库优化
1、选取最适用的字段属性MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽可能小。例如,在定义邮政编码这个字段时,如果将其设置为CHAR(255),显然给数据库增加了不必要的空间,甚至使用VARCHAR这种类型也是多余的,因为CHAR(6)就可以很好的完成任务了。同样...原创 2019-09-15 15:32:08 · 268 阅读 · 0 评论 -
E-R图
一、那么什么是E-R模型? E-R模型即实体-联系模型,E-R模型的提出基于这样一种认识,数据库总是存储现实世界中有意义的数据,而现实世界是由一组实体和实体的联系组,E-R模型可以成功描述数据库所存储的数据。二、为什么要设计E-R模型? 设计E-R模型能够更有效和更好的模拟现实世界。三、E-R模型的基本要素1) 实体 :实体是E-R模型的基本对象,是现实世界中各种事物的抽象,凡...原创 2019-09-14 22:43:01 · 2037 阅读 · 0 评论 -
数据库范式
数据库三大范式1 第一范式(1NF)(每一列都是不可分割的基本数据项)在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的...原创 2019-09-14 22:10:23 · 85 阅读 · 0 评论 -
drop、delete和truncate的区别
drop直接删除表,truncate删除表中数据,再插入时自增长id又从1开始,delete删除表中数据,可以加where语句。(1) DELETE语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存以便进行回滚操作。TRUNCATE TABLE则一次性地从表中删除所有的数据并不把单独的删除操作记录记入日志中保存,删除行是不能恢复的。并且在删除的过程中不会激...原创 2019-09-14 21:41:37 · 163 阅读 · 0 评论 -
数据库--视图
视图的基本概念以及作用视图(子查询):是从一个或多个表导出的虚拟的表,其内容由查询定义。具有普通表的结构,但是不实现数据存储。对视图的修改:单表视图一般用于查询和修改,会改变基本表的数据,多表视图一般用于查询,不会改变基本表的数据。--创建视图-- create or replace view v_student as select * from student; --从视图...原创 2019-09-12 19:18:00 · 160 阅读 · 0 评论 -
数据库索引简介
https://blog.csdn.net/suifeng3051/article/details/52669644https://zhuanlan.zhihu.com/p/23624390目录1. 索引的优点2. 聚集索引和非聚集索引3. 复合索引4. B+树5. MySQL数据库常见两种引擎6. 索引的优化1. 索引的优点索引是基于平衡树(左右子树高度相...转载 2019-08-03 21:50:51 · 108 阅读 · 0 评论