
mysql
文章平均质量分 78
s11show_163
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
mysql三大范式
第一范式(1NF) 数据表的每一列都要保持它的原子特性,也就是列不能再被分割。 这张表就不符合第一范式规定的原子性,不符合关系型数据库的基本要求,在关系型数据库中创建这个表的操作就不能成功。不得不将数据表设计为如下形式。 第二范式(2NF) 概念:属性必须完全依赖于主键。 下面这张表不符合第二范式的要求。 2.1 缺点 表中的第一行数据都存储了系名、系主任,数据的冗余太大 如果有一个新的系还没有开始找到学生,那么不能讲该系的信息添加到数据表中去,从数据表中看不到该系的存在 如果将某个系的学生信息全部删原创 2021-03-16 23:15:50 · 178 阅读 · 0 评论 -
30张图带你彻底理解红黑树
30张图带你彻底理解红黑树原创 2021-03-01 00:12:37 · 182 阅读 · 0 评论 -
MySQL存储引擎--MyISAM与InnoDB区别
先看下《高性能MySQL》中对于他们的评价: InnoDB:MySQL默认的事务型引擎,也是最重要和使用最广泛的存储引擎。它被设计成为大量的短期事务,短期事务大部分情况下是正常提交的,很少被回滚。InnoDB的性能与自动崩溃恢复的特性,使得它在非事务存储需求中也很流行。除非有非常特别的原因需要使用其他的存储引擎,否则应该优先考虑InnoDB引擎。 MyISAM:在MySQL 5.1 及之前的版本,MyISAM是默认引擎。MyISAM提供的大量的特性,包括全文索引、压缩、空间函数(GIS)等,但MyISAM原创 2021-01-28 19:05:04 · 97 阅读 · 0 评论 -
锁
在计算机科学中,锁(lock)或互斥(mutex)是一种同步机制,用于在有许多执行线程的环境中强制对资源的访问限制。锁旨在强制实施互斥排他、并发控制策略。 一,Java有哪些锁? 公平锁/非公平锁 可重入锁 独享锁/共享锁 互斥锁/读写锁 乐观锁/悲观锁 分段锁 偏向锁/轻量级锁/重量级锁 自旋锁 1,公平锁/非公平锁 公平锁指多个线程按照申请锁的顺序来获取锁。非公平锁是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取锁。有可能,会造成优先级反转或者饥饿现象。 对于Ja原创 2021-01-21 21:05:43 · 134 阅读 · 0 评论 -
MySQL: InnoB
一、InnoDB体系架构 下图简单描述了InnoDB存储引擎的体系结构: InnoDB存储引擎有多个内存块,这些内存块组成了一个大的内存池。后台线程主要负责刷新内存池中的数据、将已修改的数据刷新到磁盘等等。接下来我们分别介绍后台线程和内存池。 1.1 后台线程 InnoDB后台有多个不同的线程,用来负责不同的任务。主要有如下: Master Thread 这是最核心的一个线程,主要负责将缓冲池中的数据异步刷新到磁盘,保证数据的一致性,包括赃页的刷新、合并插入缓冲、UNDO 页的回收等. IO Thread原创 2021-01-21 21:04:24 · 364 阅读 · 0 评论 -
面经 - 0 - 数据库
算法题:给定一个数组,求峰值(比左边一个大,比右边一个大),暴力O(n)很显然,但是有logn的。我想到了一部分,如果两边都不是峰值,那么峰值一定在中间。这是可以二分的。但是我没敢说,因为太紧张了我无法证明。归根结底是我对二分理解得不够深入,之前遇到的二分都是排好序的数组的二分,这次一个没排序的也可以二分让我大开眼界。本题凉 普通线性查找: #include<bits/stdc++.h> using namespace std; /***************************.原创 2021-01-16 15:52:56 · 555 阅读 · 0 评论 -
mysql:乐观锁 & 悲观锁 & CAS & synchronized及其他各种锁 & MVCC & InnoDB
1.悲观锁 总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁(共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程)。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。Java中synchronized和ReentrantLock(可重入锁)等独占锁就是悲观锁思想的实现。 2.乐观锁 总是假设最好的情况,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但原创 2021-01-21 20:42:08 · 305 阅读 · 0 评论