mysql
文章平均质量分 67
qq_44949002
这个作者很懒,什么都没留下…
展开
-
MySQL系列(二)——日志篇
MySQL应该是我们用的最多,也算是最熟悉的数据库了。那么,MySQL中有哪些日志了,或者你知道的有哪些日志了?首先,我们能接触到的,一般我们排查慢查询时,会去看慢查询日志。如果做过数据备份会恢复的,可能接触或用过BinLog。那还有其他的吗?对MySQL原理比较了解的,应该知道还有Redo Log和Undo Log。这些都是比较常见:慢查询日志、Binlog、Redo Log、Undo Log。原创 2023-12-06 16:32:20 · 973 阅读 · 0 评论 -
MySQL系列(一):索引篇
这里还要考虑一个问题,那就是存储和磁盘IO开销的问题,如果使用的是AVL树,我们每一个树节点只存储了一个数据,我们一次磁盘IO只能取出来一个节点上的数据加载到内存里,那么一次查询将会发生多次磁盘IO,而一般磁盘IO是比较耗时的,我们需要尽可能的减少磁盘IO的次数。开销一般包括:IO开销,CPU开销,以及网络开销。如上面这个图,当我们使用范围查询时,比如查询大于等于2的记录,记录为:(2,1)、(2,4)、(3,1)、(3,2),可以看到后一个字段的值(1、4、1、2)是无序的,因此没有起到索引的效果。原创 2023-12-06 15:48:07 · 346 阅读 · 0 评论 -
MySql MVCC 详解
MVCC 是多版本并发控制(Multiversion Concurrency Control)的缩写。它是一种数据库事务管理技术,用于解决并发访问数据库的问题。MVCC 通过创建多个版本的同一数据,每个版本与一个事务关联,来实现并发控制。数据库在执行更新操作时,会保留之前版本的数据,以便其他正在执行事务的用户可以访问这些数据。每个事务都能看到一个稳定的数据快照,并且仅接触到他们自己的版本,这意味着每个事务可以独立地读取和写入数据,而不会干扰其它事务。原创 2023-12-06 15:30:54 · 402 阅读 · 0 评论 -
数据仓库
答:并行的,dw 层问:那其实对于同一个数据,这两个过程是串行的?ODS 全称是 Operational Data Store,操作数据存储.“面向主题的”,数据运营层,也叫ODS层,是最接近数据源中数据的一层,数据源中的数据,经过抽取、洗净、传输,也就说传说中的 ETL 之后,装入本层。概念:是数据仓库的细节数据层,是对STAGE层数据进行沉淀,减少了抽取的复杂性,同时ODS/DWD的信息模型组织主要遵循企业业务事务处理的形式,将各个专业数据进行集中,明细层跟stage层的粒度一致,属于分析的公共资源。原创 2023-11-21 14:44:05 · 1087 阅读 · 0 评论 -
数据库三大范式
表中sex_desc依赖于sex_code,而sex_code依赖于id(主键),从而推出sex_desc依赖于id(主键);判断表是否符合第一范式,列是否可以再分,得看需求,如果将电话号和地址分开才能满足查询等需求时,那之前的表设计就是不满足1NF的,如果电话号和地址拼接作为一个字段也可以满足查询、存储等需求时,那它就满足1NF。(主要是说在联合主键的情况下,非主键列不能只依赖于主键的一部分)stu_id(学生id)、kc_id(课程id)、score(分数)、kc_name(课程名)原创 2023-11-21 11:24:55 · 93 阅读 · 0 评论 -
MySQL系列(一):安装篇
https://www.cnblogs.com/zhangkanghui/p/9613844.html原创 2022-03-09 08:55:42 · 725 阅读 · 0 评论 -
4. 数据库事务
1.事务的作用:保护数据安全性.2.事务:数据库的最小的执行单元.由一条到多条Sql语句组成一个逻辑执行单位,事务中Sql语句要么同时执行成功,要么同时执行失败,如果事务中有一条Sql语句执行失败就全部失败.3.事务的特性(ACID): 原子性(Atomicity):事务中Sql语句不能再分,要么同时执行成功,要么同时执行失败. 一致性(Consistency):事务执行之前和执行之后,事务中数据的总状态不变. 隔离性(Isolation):事务与事务之间是彼此隔离,互不干扰的. 持久原创 2021-08-08 16:52:31 · 562 阅读 · 0 评论 -
7.数据库优化之mycat
当前程序完全屏蔽调底层数据库的结构,直接通过mycat做读写分离的操作。读写分离和分库分表原创 2021-08-07 23:27:20 · 170 阅读 · 0 评论 -
3. 多表查询和dcl
一.多表概念1.多表中常用概念主表:当前表中主键列被其他的表引用,当前表叫主表.主表一定要有主键.子表(从表):当前表中引用其他表中列,当前表叫子表.公共列:两个或以上表中表示相同意思的列叫公共列.一般情况下,公共列的列名相 同.但是公共列的列名也可以不相同.2.多表之间的关系一对多:在多的一方的表中,引用一的一方表中主键来建立关系.eg:一个班级有多名 学生,但是一个学生只属于一个班级.一对一:在任何一方引用另一方表中主键都可以建立关系.eg:一个女人只能有一个 老公,原创 2021-08-04 00:07:07 · 192 阅读 · 0 评论 -
MySQL系列(三):单表查询篇
一.单表查询1.单表查询的总语法select 列名1,列名2,…from 表名[where 条件] //边查询边筛选[group by 列名1,列名2…] //将查询结果进行分组[having 条件] //将查询分组后的结果进一步筛选[order by 列名1 asc/desc,列名2 asc/desc] //排序,默认升序asc[limit 数字1,数字2] //限制输出的记录原创 2021-08-04 00:06:24 · 1738 阅读 · 0 评论 -
MySQL系列(二):基础概念篇
一.数据库的基础概念1.数据库的作用:存取数据,生成新的数据.2.数据库:存取数据的仓库.3.数据库的组成:数据库的表,表与表之间关系,对象.4.数据存在数据库的数据表中,表由行和列组成. 行=记录=实体 列=字段=域5.数据库管理系统(DBMS):主要用来对数据作增加,修改,删除,查询的操作的.本质就是一种软件.6.管理员(DBA):管理数据库.7.数据库系统(DBS):由数据库,管理员,数据库管理系统.本质就是一种软 件.8.数据库按类型分:关系型数据库,非关系型数据库. 关系型数原创 2021-08-02 23:52:36 · 78 阅读 · 0 评论 -
5.mysql的数据结构
1.mysql的数据结构大家都知道用的b+tree做的。那为什么要用B+tree而不用B-tree呢?不用红黑树叉树呢不用红黑树是因为,一个节点就是一个数据,那么比如每读取一个节点就是一次i/o读写,大量的i/o读写会造成效率低下;也会消耗大量的内存。那么我们能不能读取1一片节点比如2,2,3这3个节点其他不读了?这样不行的因为机械硬盘是读块的他有可能你读取的这片节点不在你这个块上。而且mysql是把数据往硬盘放,内存只放根节点,那么我们就比较根节点。但是他每次比较还是一数据一节点的去比较找到根节点原创 2021-06-19 14:40:27 · 2914 阅读 · 0 评论 -
6.mysql优化
2.什么是存储引擎?数据库存储引擎是数据库底层软件组件,数据库管理系统使用数据引擎进行创建、查询、更新和删除数据操作。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎还可以获得特定的功能。现在许多数据库管理系统都支持多种不同的存储引擎。MySQL 的核心就是存储引擎。MySQL支持的存储引擎mysql支持的存储引擎有,InnoDB、MyISAM、Memory、Merge、Archive、Federated、CSV、BLACKHOLE等 其中M...原创 2021-05-21 00:09:37 · 190 阅读 · 0 评论