MySQL:逃不掉的锁事,间隙锁
17其乐融融 发布于 2023/12/13 01:33:19
间隙锁意如其名,就是锁定符合条件但是实际不存在的记录,也就是一定的区间,防止其他事务在某个事务执行期间向该区间插入新的记录。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/12/13 01:33:19
间隙锁意如其名,就是锁定符合条件但是实际不存在的记录,也就是一定的区间,防止其他事务在某个事务执行期间向该区间插入新的记录。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/12/12 01:33:40
带 lock in share mode 的 SQL 语句,是当前读(读最新版本的数据),因此会直接读到 1000001 这个结果,所以速度很快;而 select * from t where id=1 这个语句,是一致性读,因此需要从 1000001 开始,依次执行 undo log,执行了 100 万次回滚以后,才将 1 这个结果返回。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/12/12 01:33:33
InnoDB实现了四个标准的隔离级别,每一种级别都规定了一个事务中所做的修改,哪些在事务内和事务间是可见的,哪些是不可见的。低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/12/12 01:33:30
准备MySQL面试需要对数据库原理和MySQL技术栈有深入的理解。通过熟悉上述关键知识点,你将能够在面试中展现出对MySQL的专业知识和实际应用经验。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/12/12 01:33:24
当数据量小时,可能一页数据就够放的时候,join的成本和速度都更好。数据量大的时候确实分开查的成本更低,但是由于数据量大,造成循环的成本更多,代码执行的时间也就越长。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/12/12 01:33:19
慢查询日志记录了所有执行时间超过指定参数(long_query_time,单位:秒,默认10秒)的所有SQL语句的日志。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/12/12 01:33:16
在MySQL中,聚合函数主要由:count,sum,min,max,avg,这些聚合函数我们之前都学过,不再重复。这里我们学习另外一个函数:group_concat(),该函数用户实现行的合并。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/12/12 01:33:12
MySQL数据库使用FEDERATED引擎表表,可以实现库实例(跨服务器)的数据访问及处理,这极大的方便了数据间的关联、对比及数据治理。关于其实现原理及优劣势可以在以后的课程合集中细说,感兴趣的也可以多实验了解。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/12/12 01:33:05
从 MySQL 8.0.20 开始,MySQL 不再使用 Block Nested-Loop Join 算法,并且在以前使用 Block Nested-Loop Join 算法的所有情况下都使用 Hash Join 优化。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/12/12 01:33:03
本文介绍了十个提升MySQL开发效率的高效技巧。通过合理地利用这些技巧,开发人员可以在MySQL项目中取得更好的性能和生产力。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/24 01:33:19
数据库实例的物理文件的大小是根据系统表计算的表大小的两倍以上,原因是统计数据不准确,具体是索引数据页的数量不准确。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/21 01:33:06
MySQL数据库的性能调优是数据库管理员和开发者们必须面对的挑战,而性能关键的方式在于参数的调优,其中 innodb_lru_scan_depth 是不可忽视的一项。今天我们一起了解这个参数,探讨如何通过调整它来优化数据库性能。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/17 01:33:21
不过使用 join 时,小表驱动大表,一定要建立索引,join 的表最好不要超过 3 个,否则性能会非常差,还会大大增加 sql 的复杂度,非常不利于后续功能扩展。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/17 01:33:19
MySQL索引是数据库性能优化的关键工具,通过深入理解索引的类型、创建、维护和最佳实践,可以更好地利用它们,提高数据库查询性能,提供更快的数据检索速度。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/16 01:33:21
Select...for update在MySQL中,是一种悲观锁的用法,一般情况下,会锁住一行数据,但如果没有使用正确的话,也会把整张表锁住,导致SQL性能急剧下降。其实,我之前也在实际项目中试过用For update关键字加行锁,比如:积分兑换礼品的功能。今天就跟大家一起聊聊Select...for update这个话题,希望对你会有所帮助。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/16 01:33:13
如果您需要存储和处理大量数据,且读写负载较高,单个GreatSQL/MySQL服务器可能无法满足需求,或为了满足跨地域访问的需求,可以将单机数据库,改造成可跨多个数据中心采用异步复制、或半同步、以及强同步等方式,既可以保证数据库的多副本容灾,又可提升业务的读写效率,规避了单点故障对业务的影响和负载。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/16 01:33:08
Timestamp类型的一个限制是其存储范围,它使用4字节(32位)整数来表示秒数,从而导致在2038年01月19日03:14:07之后无法正确存储时间戳。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/15 01:33:08
自然连接可能会导致意外的结果,特别是当表结构变化或列名不一致时。因此,建议在使用自然连接之前,仔细检查表结构和列名,确保它们符合预期。由于自然连接的隐式性和潜在的不确定性,许多开发人员更倾向于使用显式的连接条件(例如使用INNER JOIN或ON子句),以明确指定连接条件并避免潜在的错误。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/14 01:33:10
在实践中mysql数据库表字段过多会引发性能问题。通常约定mysql数据库的表字段不得超过255个。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/14 01:33:05
这些是MySQL中删除数据的主要方法。在执行删除操作时,请确保备份重要数据,以免意外删除。此外,根据您的需求选择适当的删除方法,以确保数据库的完整性和性能。如果不确定如何执行删除操作,建议在测试环境中进行测试,以避免在生产环境中发生意外。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/12 01:33:13
Explain关键字可以模拟优化器执行 SQL 查询语句,从而知道 MySQL 是如何处理 SQL 语句的。分析查询语句或表结构的性能瓶颈。执行语句:explain + SQL语句。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/12 01:33:10
由于sql执行较快,直接执行上面两个事务中的sql可能不会产生死锁的情况,我们可以稍做修改,也就在UPDATE语句后面加上SLEEP函数,SLEEP会让当前进程暂停执行指定的时间(单位为秒)。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/12 01:33:07
不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能。现在许多不同的数据库管理系统都支持多种不同的数据引擎。MySQL的核心就是存储引擎。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/10 01:33:13
由于sql执行较快,直接执行上面两个事务中的sql可能不会产生死锁的情况,我们可以稍做修改,也就在UPDATE语句后面加上SLEEP函数,SLEEP会让当前进程暂停执行指定的时间(单位为秒)。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/11/10 01:33:10
不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能。现在许多不同的数据库管理系统都支持多种不同的数据引擎。MySQL的核心就是存储引擎。
阅读()评论(0)赞 ()