数据库知识
CrankZ
这个作者很懒,什么都没留下…
展开
-
数据库三大范式
第一范式:所有的属性不可再分举个例子,下表中的【地址】这一列就不符合【第一范式】,因为地址还可再细分为省份,城市等。不符合第一范式id姓名地址1张三安徽省淮北市AA小区2李四江苏省南京市BB学校3王五浙江省杭州市CC公司改成这样就OK了符合第一范式id姓名省份城市详细地址1张三安徽省淮北市AA小区2李四江苏省南京市BB学校3王五浙江省杭州市CC公司第二范式第二范式在第一范式的基础之上,也就是说满足...原创 2018-05-11 15:55:10 · 288 阅读 · 0 评论 -
MySQL索引知识总结
什么是索引?一个索引是存储的表中一个特定列的值数据结构(最常见的是B-Tree)。索引是在表的列上创建。所以,要记住的关键点是索引包含一个表中列的值,并且这些值存储在一个数据结构中。请记住记住这一点:索引是一种数据结构。因此,首先你要明白的一点就是,索引它也是一个文件,它是要占据物理空间的。这个在MySQL目录下可以找到,比如:C:\ProgramData\MySQL\MySQL Server 5...原创 2018-05-27 21:46:20 · 557 阅读 · 0 评论 -
MySQL中的锁
MySQL常用存储引擎的锁机制MyISAM和MEMORY采用表级锁(table-level locking)BDB采用页面锁(page-level locking)或表级锁,默认为页面锁InnoDB支持行级锁(row-level locking)和表级锁,默认为行级锁InnoDB和MyISAM的最大不同点有两个:InnoDB支持事务(transaction);默认采用行级锁。加锁可以保证事务的一致...原创 2018-06-13 09:39:07 · 256 阅读 · 0 评论 -
数据库学习笔记(一):事务特性ACID
ACID 事务特性原子性(Atomicity):事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行。一致性(Consistency):事务应确保数据库的状态从一个一致状态转变为另一个一致状态。一致状态的含义是数据库中的数据应满足完整性约束。隔离性(Isolation):多个事务并发执行时,一个事务的执行不应影响其他事务的执行。持久性(Durability):一个事务一旦...原创 2018-07-09 17:42:15 · 243 阅读 · 0 评论 -
缓存相关资料总结
1.前言在高访问量的web系统中,缓存几乎是离不开的;但是一个适当、高效的缓存方案设计却并不容易;所以接下来将讨论一下应用系统缓存的设计方面应该注意哪些东西,包括缓存的选型、常见缓存系统的特点和数据指标、缓存对象结构设计和失效策略以及缓存对象的压缩等等,以期让有需求的同学尤其是初学者能够快速、系统的了解相关知识。2.数据库的瓶颈2.1数据量关系型数据库的数据量是比较小的,以我们常用的MySQL为例...原创 2018-06-01 19:33:29 · 315 阅读 · 0 评论 -
数据库【三种读现象】与【四种隔离级别】+MySQL相关命令
数据库事务特性ACID数据库事务特征,即 ACID:A Atomicity 原子性事务是一个原子性质的操作单元,事务里面的对数据库的操作要么都执行,要么都不执行,C Consistent 一致性在事务开始之前和完成之后,数据都必须保持一致状态,必须保证数据库的完整性。也就是说,数据必须符合数据库的规则。I Isolation 隔离性数据库允许多个并发事务同事对数据进行操...原创 2018-10-11 20:23:07 · 610 阅读 · 0 评论 -
数据库连接池学习笔记(一):原理介绍+常用连接池介绍
什么是连接池数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个。为什么要使用连接池 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。 一个数据库连接对象均对应一个物理数据库连接,每次操作都打开一个物理连接,使用完都关闭连接,这样造成系统的 性能低下。 数据库连接池的解决方案是在应用程序启动...原创 2018-09-27 22:12:43 · 80757 阅读 · 15 评论 -
MySQL存储引擎:MyISAM与InnoDB
常见命令查看数据库可配置的存储引擎类型MySQL>show engines; create table创建表时指定存储引擎MySQL> use schoolMySQL> create table class(id int ,cname varchar(20)) engine=InnoDB; #创建库,指定引擎InnoDBMySQL> show...原创 2018-11-28 23:14:30 · 599 阅读 · 0 评论 -
分库分表
名词解释库:database;表:table;分库分表:sharding为什么要分库分表移动互联网时代,海量的用户每天产生海量的数量,比如:用户表 订单表 交易流水表以支付宝用户为例,8亿;微信用户更是10亿。订单表更夸张,比如美团外卖,每天都是几千万的订单。淘宝的历史订单总量应该百亿,甚至千亿级别,这些海量数据远不是一张表能Hold住的。事实上MySQL单表可以存储10亿级...原创 2018-12-01 23:11:31 · 8722 阅读 · 2 评论