首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQLMySQL锁(四)其它锁概念

    MySQL锁(四)其它锁概念 好了,锁相关内容的最后一篇文章了。其实最核心的内容,表锁、行锁、读锁、写锁、间隙锁这些重要的内容我们都已经学习过了,特别是间隙锁,是不是感觉非常复杂。...-- 事务1 mysql> begin; Query OK, 0 rows affected (0.00 sec) mysql> update tran_innodb set name = 'joe2...-- 事务1 mysql> begin; Query OK, 0 rows affected (0.00 sec) mysql> select * from tran_innodb where id...乐观锁与悲观锁 最后的概念,相信大家也经常听到过这两个名词。...很神奇,本来以为我自己只能理解到 S/X 和 表/行 锁这里,而且我也认为能够了解到这里就够了,谁知道一学起来就突然把剩下的概念也都悟出来了。

    12510

    MySQL基础概念知多少

    MySQL基础概念相关的名词还是挺多的,比如3大范式、4种隔离界别、ACID、DQL、DML、DDL,还有redo、undo、binlog等,本文就统一整理下MySQL常见的基础概念,方便小伙伴们翻阅~...MySQL相关的名词概念还是挺多的,但是常用的也不多,因此将常用的统计整理下,便于回顾: •DQL:data query language,指SELECT查询语句;•DML:data manipulation...MySQL中,DDL不属于事务范畴,如果事务和DDL并行执行,操作相关联的表的话,会出现各种意想不到问题,导致事务特性被破坏或者binlog顺序错乱[1]等,为解决这些问题而引入MDL锁机制。...事务开始时将当前版本生成undo log,undo也会产生redo来保证undo log可靠性;•binlog:binlog是mysql层面的归档日志,可用于主从复制和数据库基于时间点的还原。...References [1] binlog顺序错乱: https://bugs.mysql.com/bug.php?id=989

    63010

    MySQL中MTR的概念

    //MySQL中MTR的概念// MTR全称是Mini-Transaction,顾名思义,可以理解为"最小的事务",MySQL中把对底层页面的一次原子访问的过程称之为一个Mini-Transaction...假如我们有一个事务,事务中包含3条语句,那么MTR的概念图如下: ?...中的latch的概念,在MySQL中,latch是一种轻量级的锁,与lock不同,它锁定的时间特别短,在innodb中,latch又可以分为mutex(互斥量)和rwlock(读写锁)2种,它的目的在于保证并发线程操作临界资源的正确性...理解了latch的概念,我们看看the fix rule规则: 修改一个数据页,需要获得这个数据页的x-latch; 访问一个页是需要获得s-latch或者x-latch; 持有该页的latch直到修改或者访问该页的操作完成才释放...之所以介绍MTR,是为了后续介绍MySQL8.0的redo log 优化做准备,在MySQL5.7中,mtr保证了事务内部操作的原子性。

    3.3K30

    理解MySQL——架构与概念

    写在前面:最早接触的MySQL是在三年前,那时候MySQL还是4.x版本,很多功能都不支持,比如,存储过程,视图,触发器,更别说分布式事务等复杂特性了。...这些资料打算分为两部分,上部主要讨论MySQL的优化,其中主要参考了《MySQL Manual》和《High Performance MySQL》,如果有时间,以后在下部分析一下MySQL的源码。...如果你是MySQL高手,希望你不吝赐教;如果你是新手,希望对你有用。 第一章、MySQL架构与概念 1、MySQL的逻辑架构 ?...1.3.1、事务的ACID特性 事务是由一组SQL语句组成的逻辑处理单元,事务具有以下4个属性,通常简称为事务的ACID属性(Jim Gray在《事务处理:概念与技术》中对事务进行了详尽的讨论)。...主要参考: 《MySQL Manual》 《High Performance MySQL

    44920

    mysql字符串转数字_mysql字符串转数字小计

    问题:要求比较’100%’和’95%’的大小 实践:mysql> SELECT ‘100%’ > ‘95%’; +—————-+ | ‘100%’ > ‘95%’ | +—————-+ | 0 | +—...————-+ 1 row in set (0.00 sec) 发现’100%’竟然小于’95%’ 原因:因为是字符串字符串比较是递归字符串里面的每个字符进行比较,先去第一个,1和9比较大小,则1比9小...,输出结果;如果相等,则继续进行下一个字符比较 如果想要对这种类型的字符串进行大小比较,该怎么做呢?...DATETIME 浮点数 : DECIMAL 整数 : SIGNED 无符号整数 : UNSIGNED 因为要转换为数字类型,如果是’100.12%’这种格式,最好是用decimal 新的比较方法如下:mysql...DECIMAL(10,2)) >CAST(‘99.6%’ AS DECIMAL(10,2)) bj; +—-+ | bj | +—-+ | 1 | +—-+ 1 row in set (0.00 sec) mysql

    2.4K20

    mysql语句截取字符串_mysql分割字符串split

    MySQL 字符串截取相关函数: 1、从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) 例: select left(content,200) as abstract...from my_content_t 2、从右开始截取字符串 right(str, length) 说明:right(被截取字段,截取长度) 例: select right(content,200) as...str返回一个子字符串,起始于位置 pos。...带有len参数的格式从字符串str返回一个长度同len字符相同的子字符串,起始于位置 pos。 使用 FROM的格式为标准 SQL 语法。也可能对pos使用一个负值。...假若这样,则子字符串的位置起始于字符串结尾的pos 字符,而不是字符串的开头位置。在以下格式的函数中可以对pos 使用一个负值。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

    4.8K30

    mysql字符串函数

    ,则结果为NULL 3.替换字符串的函数insert(s1,x,len,s2) 返回字符串s1,其子字符串起始于x位置和被字符串s2取代的len字符,如果x超过字符串长度,那么返回值为原始字符串,如果len...(s1 from s) 删除字符串s中两端所有的子字符串s1 7.重复生成字符串的函数repeat(s,n) 返回一个由重复的字符串s组成的字符串,字符串s的数目等于n,若n小于等于0,则返回一个空字符串...select repeat('mysql',3) = mysqlmysqlmysql 8.空格函数space(x) 和替换函数replace(s,s1,s2) space(x) 返回一个由n个空格组成的字符串...replace(s,s1,s2)使用字符串s2替代字符串s中所有的字符串s1 9.比较字符串大小的函数strcmp(s1,s2) 若所有的字符串均相同,则返回0, 10.获取子串的函数substring...12.字符串逆序的函数reverse(s) 将字符串s反转,返回的字符串的顺序和s字符串顺序相反 13.返回指定位置的字符串的函数 在elt(n,s1,s2,s3,..)若N=1,则返回值为字符1,若

    2.5K30

    MySQL字符串函数

    字符串函数是MySQL中常用的函数。 字符串函数主要用于处理表中的字符串字符串函数包括求字符串长度、合并字符串、在字符串中插入子串和大小写字母之间的转换等函数。...MySQL中常用的字符串函数如下表所示: char_length(s) 返回字符串s的字符数 length(s) 返回字符串s的长度(一个中文字母长度为3) concat(s1,s2,...)...lower(s) lcase(s) 将s字符串中的所有大写字母变成小写 left(s,n) 返回字符串s的前n个字符 rigth(s,n) 返回字符串s的后n个字符 lpad(s1,len,s2) 将字符串循环...去除字符串s开始处的空格 rtrim(s) 去除字符串s结尾处的空格 repeat(s,n) 返回将字符串s重复n次后的字符串 space(n) 返回n个空格 replace(s,s1,s2) 将字符串...s2替代字符串s中的子字符串s1 strcmp(s1,s2) s1s2,返回1; substring(s,n,len) 返回从字符串s的第n个字符开始长度为len的子字符串 mid(s,n,len) 返回从字符串

    2.9K20

    MySQLMySQL索引与B+树的概念

    MySQL索引与B+树的概念 要说到在数据库相关的知识中,最吸引人的是什么,估计 80% 以上的人都会脱口而出 索引 这个词。...我们都知道,这玩意真的好用,非常方便,而且往往优化 MySQL 的第一步就是去建立索引。那么今天,我们就开始学习了解索引这一块的内容,首先当然还是与索引相关的概念。 索引 索引是什么意思?...我们可以先问图书馆的工作人员,比如说找一本 MySQL 相关的书籍。...注意,顺序很重要,不管是数字类型的索引还是字符串类型的索引,都会在 B+树 中进行排序,这个概念会影响到之后的 WHERE 条件优化以及 ORDER BY 相关的内容。...总之,索引以及相应的知识是我们学习 MySQL 绕不过去的一个坎,也是我们需要不断深入学习的内容,下一篇我们就来看看如何分析一条语句的索引情况。 参考文档: 《MySQL是怎样运行的》

    11710

    MySQL的基本术语和概念

    MySQL是一种广泛使用的关系型数据库管理系统(RDBMS),它使用SQL语言来管理和操作数据。本文将介绍MySQL的基本术语和概念,并提供示例来帮助读者更好地理解。...数据库(Database) MySQL数据库是一个由表、记录和字段组成的集合,其中表是数据的主要存储单位。一个数据库可以包含多个表,每个表包含多个记录,每个记录包含多个字段。...表(Table) 表是数据在MySQL数据库中的主要存储单位。每个表都由一组列和行组成。列定义了表中数据的类型和名称,行包含了实际的数据。...NULL, PRIMARY KEY (id));这个表包含了4个列,分别是id、name、email和password,其中id是一个自动增加的整数列,name、email和password都是字符串列...在MySQL中,可以使用BEGIN、COMMIT和ROLLBACK语句来控制事务的开始、提交和回滚。

    75921

    MYSQL数据库-基础概念

    零、前言 从本章开始将学习MYSQL数据库的知识,而这里主要讲解MYSQL数据库基础 数据库基础 1、什么是数据库 概念:数据仓库,软件,安装在操作系统之上 Structure Query Language...各种系统在底层实现方面各有不同,但是 MySQL 基本上能保证在各个平台上的物理体系结构的一致性 2、文件和数据库 文件保存数据的缺点: 文件的安全性问题 文件不利于数据查询和管理 文件不利于存储海量数据...MySQL:世界上最受欢迎的数据库,属于甲骨文,并发性好,不适合做复杂的业务。...、Oracle、Sql Server、DB2、SQLlite 概念:通过表和表之间,行和列之间的关系进行数据的存储,通过外键关联来建立表与表之间的关系 非关系型数据库:NoSQL(Not Only SQL...) Redis、MongoDB 概念:指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定 5、SQL的优点 简单易学,具有很强的操作性 绝大多数重要的数据库管理系统均支持

    48820

    MySQL全文索引的概念

    MySQL全文索引的概念 今天下午下班去吃饭,吃完饭坐电梯上三楼,竟然被困在电梯里面了,当时的感觉还是很刺激的,电梯上升着,突然就掉下来了,像跳楼机一样,突出一个刺激,索性只掉了一层。。。...今天回家比较晚了,简单写写全文索引的概念吧。...全文索引有自己独特的语法,这些语法帮助这类查询找到某些关键字的记录,全文索引可以支持各种内容的搜索,包含char、varchar以及text的类型,不幸的是,MySQL对于全文索引的支持不是特别好,我们知道...这和我们想象的是不一样的,可能在我们的概念里,这个单词在某个文档中出现的次数比较多,那么这个文档就是我们想要的,事实不是这样的,例如非常常见的单词可能在50%以上的文章中都出现了,那么这个单词肯定不是我们想要搜索的结果...这里介绍一下全文索引的语法: select * from tbl where match (field) against ('a'); 其中,field是相关的搜索字段,against中的a是要搜索的字符串

    1.1K30
    领券