随笔分类 -  MySQL

摘要:事务特性(ACID): 一个逻辑工作单元要成为事务,在关系型数据库管理系统中,必须满足 4 个特性,即所谓的 ACID:原子性、一致性、隔离性和持久性。 一致性:事务开始之前和事务结束之后,数据库的完整性限制未被破坏。 原子性:事务的所有操作,要么全部完成,要么全部不完成,不会结束在某个中间环节。 阅读全文
posted @ 2023-03-16 14:30 donleo123 阅读(109) 评论(0) 推荐(0) 编辑
摘要:一、讨论的范围 优化维度大致四个: 硬件升级、系统配置、表结构设计、SQL语句及索引 本节讨论的重点在SQL语句及索引。 二、表结构设计和优化 2.1 设计中间表 设计中间表,一般针对于统计分析或者实时性不高的需求(报表) 2.2 设计冗余字段 设计冗余字段,减少关联查询,同时为了减少数据一致性问题 阅读全文
posted @ 2023-03-15 16:59 donleo123 阅读(27) 评论(0) 推荐(0) 编辑
摘要:二叉树是每个节点最多有两个子节点的树。 二叉查找树又叫二叉搜索树,它或者是一棵空树,或者是具有下列性质的二叉树:若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 一、平衡二叉树 概念 平衡二叉树是基于二分法的策略提高数据的 阅读全文
posted @ 2023-03-15 16:11 donleo123 阅读(29) 评论(0) 推荐(0) 编辑
摘要:页是InnoDB管理存储空间的基本单位,一个页的大小一般是16KB。InnoDB为了不同的目的而设计了许多种不同类型的页,比如存放表空间头部信息的页,存放Insert Buffer信息的页,存放INODE信息的页,存放undo日志信息的页等等等等。当然了,如果我说的这些名词你一个都没有听过,就当我放 阅读全文
posted @ 2023-03-15 15:30 donleo123 阅读(66) 评论(0) 推荐(0) 编辑
摘要:InnoDB记录结构 页是MySQL中磁盘和内存交互的基本单位,也是MySQL是管理存储空间的基本单位。 一行记录可以以不同的格式存在InnoDB中,行格式分别是Compact、Redundant、Dynamic、Compressed。 指定和修改行格式的语法如下: CREATE TABLE 表名 阅读全文
posted @ 2023-03-15 14:55 donleo123 阅读(32) 评论(0) 推荐(0) 编辑
摘要:范式与反范式 优秀的库表设计是高性能数据库的基础。如何才能设计出高性能的库表结构呢?这里必须要提到数据库范式。范式是基础规范,反范式是针对性设计。 范式 范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法。数据库的设计范式是数据库设计所需要满足的规范。只有理解数据库的 阅读全文
posted @ 2023-03-15 11:52 donleo123 阅读(42) 评论(0) 推荐(0) 编辑
摘要:MySQL查询执行流程 架构总览 下面就是MySQL 的逻辑架构,sql layer主要负责如下功能:权限判断、sql解析、执行计划优化、query cache的处理等操作,这些操作都是在数据库系统处理底层数据之前的工作; Storage Engine Layer主要负责底层数据存取的实现,由多种存 阅读全文
posted @ 2023-03-15 11:21 donleo123 阅读(344) 评论(0) 推荐(0) 编辑
摘要:配置 缺省值 说明 name 配置这个属性的意义在于,如果存在多个数据源,监控的时候可以通过名字来区分开来。如果没有配置,将会生成一个名字,格式是:"DataSource-" + System.identityHashCode(this). 另外配置此属性至少在1.0.5版本中是不起作用的,强行设置 阅读全文
posted @ 2021-03-08 17:42 donleo123 阅读(356) 评论(0) 推荐(0) 编辑
摘要:优化大纲: 通过explain 语句帮助选择更好的索引和写出更优化的查询语句。 SQL语句中的IN包含的值不应该过多。 当只需要一条数据的时候,使用limit 1。 如果限制条件中其他字段没有索引,尽量少用or。 尽量用union all代替union。 不使用ORDER BY RAND()。 区分 阅读全文
posted @ 2021-03-05 10:51 donleo123 阅读(7247) 评论(0) 推荐(2) 编辑
摘要:MySQL中的View视图 作用一:提高了重用性,就像一个函数。如果要频繁获取user的name和goods的name。就应该使用以下sql语言。 示例: select a.name as username, b.name as goodsname from user as a, goods as 阅读全文
posted @ 2020-05-09 11:06 donleo123 阅读(979) 评论(0) 推荐(0) 编辑
摘要:1. SQL语言包括哪些类型? 数据定义:Create Table,Alter Table,Drop Table, Craete/Drop Index 数据操纵:Select ,insert,update,delete 数据控制:grant,revoke 2. 内联接,外联接区别? 内连接是保证两个 阅读全文
posted @ 2019-10-10 10:04 donleo123 阅读(27614) 评论(1) 推荐(6) 编辑
摘要:1、表架构 student(sid,sname,sage,ssex) 学生表 course(cid,cname,tid) 课程表 sC(sid,cid,score) 成绩表 teacher(tid,tname) 教师表 2、建表sql语句 SET FOREIGN_KEY_CHECKS=0; -- - 阅读全文
posted @ 2019-10-09 16:16 donleo123 阅读(21889) 评论(0) 推荐(7) 编辑
摘要:表架构 Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname) 教师表 建表语句 CREATE TABLE student ( s# INT, sname nvarch 阅读全文
posted @ 2019-10-09 12:13 donleo123 阅读(4483) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示