一江溪水
MySQL与PostgreSQL的区别 MySQL与PostgreSQL的区别
背景MySQL 和 PostgreSQL 都是广泛使用的开源关系型数据库管理系统,但它们在架构、功能、性能和使用场景等方面有许多不同之处。以下是它们的主要区别: 1. 基本概念与架构MySQL: 由 Oracle 维护(之前是 Sun Mi
2024-12-26
ElasticSearch与MongoDB的区别 ElasticSearch与MongoDB的区别
背景在面试中,经常被问到 Elasticsearch(ES) 和 MongoDB 的区别,现在总结一下,主要是从它们的功能、架构、使用场景等方面进行区分。以下是两者的主要区别: 1. 基本概念和用途Elasticsearch (ES): 用
2024-09-26
postgre数据导入导出 postgre数据导入导出
背景 在软件交付过程中,出厂需要带上较大数据量的数据 数据量会比较大,需要一个初始导入的方案 需要在初次交付部署时进行导入 在后续维护过程中需要持续不断的导入新数据 对于数据来说,只需要增加,不需要修改,删除 全量导入方案1、PG的备份恢
2024-04-24
MySQL如何避免幻读 MySQL如何避免幻读
事务的并发问题 脏读:事务A读取了事务B更新的数据,然后B回滚操作,那么A读取到的数据是脏数据 不可重复读:事务A多次读取同一数据,事务B在事务A多次读取的过程中,对数据作了更新并提交,导致事务A多次读取同一数据时,结果不一致。 幻读:A事
2021-11-14
MySQL的执行计划(三) MySQL的执行计划(三)
书接上回 MySQL的执行计划(二) 执行计划中的列possible_keys显示在查询中使用了哪些索引 key 实际使用的索引,如果为NULL,则没有使用索引; 查询中如果使用了覆盖索引,则该索引仅出现在key列中。 possible_k
2021-10-07
MySQL的执行计划(二) MySQL的执行计划(二)
书接上回:MySQL执行计划(一) 执行计划中的列typetype列指代访问类型,是MySQL决定如何查找表中的行。 是SQL查询优化中一个很重要的指标,拥有很多值,依次从最差到最优: ALL全表扫描,性能最差,在写SQL时尽量避免此种情况
2021-10-06
MySQL的执行计划(一) MySQL的执行计划(一)
什么是执行计划执行计划,就是一条SQL语句,在数据库中实际执行的时候,一步步的分别都做了什么事情 EXPLAIN命令是查看查询优化器是如何决定执行查询的主要方法,从它的查询结果中我们可以知道: 一个SQL语句每一步是如何执行的; 都做了哪
2021-10-05
MySQL的日志文件 MySQL的日志文件
二进制日志-binlog二进制日志-binlog,它是 MySQL 重要的日志模块,在 Server 层实现 binlog 以二进制形式,将所有修改数据的 query 记录到日志文件中,包括: query 语句 执行时间 相关事务信息
2021-10-04
MySQL如何保证ACID MySQL如何保证ACID
ACID 原子性:事务是一个原子操作单元,其对数据的修改,要么全都执行,要么全都不执行 一致性:事务开始前和结束后,数据库的完整性约束没有被破坏。 隔离性:同一时间,只允许一个事务请求同一数据,不同的事务之间彼此没有任何干扰。 持久性:事务
2021-10-01
MySQL索引(二) MySQL索引(二)
MySQL索引(二)自适应哈希索引 自适应哈希索引是InnoDB引擎的一个特殊功能,当它注意到某些索引值被使用的非常频繁时,会在内存中基于B-Tree索引之上再创键一个哈希索引,这样就让B-Tree索引也具有哈希索引的一些优点,比如快速哈希
2021-09-05
MySQL索引(一) MySQL索引(一)
MySQL索引索引是什么索引是数据库中用来提高性能的常用工具,索引在 MySQL 中也叫“键(Key)”,是存储引擎用于快速查找记录的一种数据结构,这也是索引的基本功能。 索引对于良好的性能很关键,尤其是当表中数据量越来越大时,索引对性能
2021-09-04
MySQL的存储引擎 MySQL的存储引擎
MySQL存储引擎MySQL 提供不同的技术存储数据,这些技术使用不同的数据存储机制、索引建立方式、锁方式来完成数据的构建,这些技术统称为存储引擎。 MySQL 至少支持 9 种存储引擎,目前最受关注的是 InnoDB 和 MyISAM 存
2021-08-24
1 / 2