随笔分类 - 数据库
1
摘要:事务只用过最简单的:同个数据库不同表之间的事务。最近遇到了跨DB server的事务,记录下。 同个 DB server 上的不同数据库的单个事务 function getConn($ip, $port, $dbbane, $user, $password) { $dsn = "mysql:host
阅读全文
摘要:For update 是 MySQL 中用于实现行锁的一种语法,其主要作用是在 SELECT 查询语句中加上 FOR UPDATE 子句,以保证查询结果集中的每一行都被锁定,避免其他事务对这些行进行修改。 SELECT ... FROM table_name WHERE ... FOR UPDATE
阅读全文
摘要:字符串函数 SELECT title,LENGTH(title),SUBSTRING(title,1,1),LEFT(title,1),RIGHT(title,1),UPPER(title),LOWER(title),REPLACE(title, 'g' ,'l'),CONCAT('title:',
阅读全文
摘要:最近要经常用到 mysql 的日期相关函数,但以前用的少,索性总结下 DATE_FORMAT(date,format)、TIME_FORMAT(time,format) published_at 字段以 datetime 类型存储 format格式 SELECT title,published_at
阅读全文
摘要:in/or 到底能不能用索引 要控制范围优化器可用的内存,使用 range_optimizer_max_mem_size 系统变量:值为 0 表示没有限制&。当值大于 0 时,优化器将跟踪在考虑范围访问方法时所消耗的内存。如果即将超过指定的限制,则放弃范围访问方法,转而考虑其他方法,包括 全表扫描。
阅读全文
摘要:拼接SQL 需过滤字符串预防 SQL 注入,存入 NULL 值需要使用 MYSQL 函数。 假定表中有 2 个字段 name(VARCHAR(20) NULL) 和 age(TINYINT(4) NULL) , 想要 name 字段写入 null 值,可以直接使用下面的 sql 语句: insert
阅读全文
摘要:本文转载自:https://javaguide.cn/database/mysql/how-sql-executed-in-mysql.html 一 MySQL 基础架构分析 1.1 MySQL 基本架构概览 下图是 MySQL 的一个简要架构图,从下图你可以很清晰的看到用户的 SQL 语句在 My
阅读全文
摘要:不使用字符串存储日期 使用字符串存储日期的缺点:字符串占用的空间更大;字符串存储的日期效率比较低,无法用日期相关的 API 进行计算和比较。 Datetime 和 Timestamp 首选 Timestamp:DateTime 类型没有时区信息,DateTime 类型保存的时间都是当前会话所设置的时
阅读全文
摘要:索引 索引是一种用于快速查询和检索数据的数据结构,其本质可以看成是一种排序好的数据结构。索引的作用就相当于书的目录。 索引底层数据结构存在很多种类型,常见的索引结构有 B 树、 B+树 和 Hash、红黑树。在 MySQL 中无论是 Innodb 还是 MyIsam,都使用了 B+ 树作为索引结构。
阅读全文
摘要:optimizer trace optimizer trace 可以帮助我们查看优化器生成执行计划的整个过程,以及做出的各种决策,包括访问表的方法、各种开销计算、各种转换等。 查看 optimizer trace 配置 show variables like '%optimizer_trace%';
阅读全文
摘要:事务有四大特性,分别是 原子性 Atomicity、一致性 Consistency、隔离性 Isolation、持久性 Durability,简称ACID。 原子性是指事务中所有操作要么全部成功,要么全部失败。 一致性是指事务执行前后,数据始终处于一致性状态,不会出现数据丢失。 隔离性是指事务提交前
阅读全文
摘要:本文系转载,原文链接:https://javaguide.cn/database/mysql/mysql-logs.html MySQL 日志 主要包括错误日志、查询日志、慢查询日志、事务日志、二进制日志几大类。其中,比较重要的还要属二进制日志 binlog(归档日志)和事务日志 redo log(
阅读全文
摘要:查询优化对于字段定义的要求 1 选择合理的字段类型:在选择字段类型时,应该遵循这样的原则: 能用数字类型,就不用字符串,因为字符的处理往往比数字要慢。 尽可能使用小的类型,比如:用bit存布尔值,用tinyint存枚举值等。 长度固定的字符串字段,用char类型,长度可变的字符串字段,用varcha
阅读全文
摘要:本文转载自 https://www.cnblogs.com/LoveBB/p/15181075.html Explain关键字是Mysql中sql优化的常用「关键字」,通常都会使用Explain来「查看sql的执行计划,而不用执行sql」,从而快速的找出sql的问题所在。 id字段 id表示执行se
阅读全文
摘要:本文转载自 https://article.itxueyuan.com/66wkm0 Multi-Version Concurrency Control,即多版本并发控制,主要是为了提高数据库的并发性能。 同一行数据平时发生读写请求时,会上锁阻塞住。但mvcc用更好的方式去处理读—写请求,做到在发生
阅读全文
摘要:本文转载自https://blog.csdn.net/weixin_43874301/article/details/128606128 https://blog.csdn.net/weixin_43874301/article/details/128606128 索引是一种数据结构,用于帮助我们在
阅读全文
摘要:本文转载自https://blog.csdn.net/qq_37555071/article/details/120472767、https://mp.weixin.qq.com/s/Wq8-fdH_WR-2lvf-Lut5Yw MySQL 的并发控制是在数据安全性和并发处理能力之间的权衡,通过不同
阅读全文
摘要:本文转载自 https://www.cnblogs.com/fengzheng/p/12557762.html 事务具有原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)四个特性,简称 ACID,缺一不可。今天要说的就是隔离性
阅读全文
摘要:本文转载自:xuanzhi的博客 http://www.cnblogs.com/xuanzhi201111 作者:陆炫志 在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计
阅读全文
摘要:最近优化一个页面,数据5GB(可能要算上索引),单个查询要300s左右,数据表建有联合索引,顺便复习总结下联合索引的东西,本文内容皆来自网络,如有侵权,请联系我删除。 联合索引 单一索引是指索引列为一列的情况,另外,用户可以在多个列上建立索引,这种索引叫做复合索引,也叫组合索引、联合索引。 联合索引
阅读全文
1
浙公网安备 33010602011771号