- 博客(296)
- 收藏
- 关注
原创 mongodb报错Sort exceeded memory limit of 104857600 bytes
MongoDB 排序内存超限报错的核心是 “排序操作占用内存超过 100MB 且未启用磁盘排序”。解决该问题的优先级为:添加排序索引(根治)> 开启磁盘辅助排序(应急)> 修改内存参数(不推荐)。在实际应用中,应优先通过索引优化从根源上解决问题,仅在临时场景使用磁盘排序应急。同时,需根据 MongoDB 版本差异调整配置,并建立长期监控机制,避免同类报错重复发生,保障数据库查询性能与稳定性。
2025-12-16 10:02:00
821
原创 client_loop send disconnect broken pipe 报错解决方案
这个报错通常出现在 SSH 客户端连接远程服务器时,意味着客户端与服务器之间的 TCP 连接意外中断。
2025-12-15 20:37:38
790
原创 MySQL processes, threads, connections的区别
指客户端与 MySQL 服务器之间建立的网络连接会话,是客户端与服务器通信的 “通道”。本质:连接是一个 “逻辑会话”,通过 TCP/IP(默认 3306 端口)、Unix Socket(本地连接)等方式建立,用于客户端发送 SQL 请求、接收服务器返回结果。每个连接对应一个客户端会话(如一个 Java 应用的数据库连接、一个 Navicat 连接);连接有生命周期:从等命令发起,到quit或超时断开;连接会占用服务器资源(如内存、文件描述符),MySQL 通过。
2025-10-03 23:03:45
358
原创 MySQL 8.0 InnoDB ReplicaSet 完整配置指南与切换
InnoDB ReplicaSet 为 MySQL 8.0 提供了轻量级、易维护的高可用方案,相比传统主从复制,它简化了同步配置与主从切换流程,且原生支持 GTID,数据一致性更有保障。本文通过 “环境准备→参数配置→ReplicaSet 搭建→手动切换” 的完整流程,可满足中小业务的高可用需求。
2025-10-03 22:19:54
742
原创 MySQL 8 半同步复制
数据可靠性:默认after_sync模式下,主库已提交事务均已同步到从库,故障转移无数据丢失;灵活性:超时降级机制确保业务不阻塞,参数可按需调整(如超时时间、等待从库数量);低门槛:基于插件实现,无需额外部署第三方工具(如 MHA),运维成本低。适用场景:电商订单、金融交易、支付系统等对数据一致性要求高,且能接受毫秒级提交延迟的业务;不适用场景:超高性能要求(如每秒数十万事务)、无需数据一致性的日志存储场景。
2025-10-01 08:12:46
666
原创 MySQL 误删表及数据?教你一步步找回数据
预防优先:开启 binlog(推荐 ROW 格式)+ 定期备份(至少每日一次),是数据安全的基础。误删后冷静操作:停止所有操作,保护 binlog 日志,避免数据覆盖。恢复逻辑清晰:先恢复备份到历史状态,再用 binlog 补充增量数据,二者结合实现完整恢复。通过以上步骤,即使误删表或数据,也能最大程度减少损失。日常运维中,建议定期演练恢复流程,确保关键时刻 “拿得出、用得上”。
2025-07-29 14:45:17
1417
原创 MySQL 崩溃恢复, Redo 日志修复
MySQL 正常关闭时会执行一系列收尾工作(如清理 undo 日志、合并 change buffer),而崩溃属于 "非正常终止",未完成的操作需在下次启动时处理。利用 Redo 日志将未刷盘的脏页恢复到崩溃前的状态;处理未完成的事务(提交、回滚或清理),确保数据逻辑一致。该过程涉及 InnoDB 存储引擎的双重写(double write)、Redo 日志、undo 表空间等关键组件,协同完成数据修复与事务整理。双重写修复损坏的数据页,为 Redo 日志应用奠定基础;
2025-07-25 09:40:52
390
原创 基于 MaxScale 实现 MySQL 读写分离
MaxScale 通过插件化设计实现了 MySQL 读写分离的灵活配置,尤其在数据一致性控制上表现出色。通过本文的部署步骤,可快速搭建 “1 主 2 从 + MaxScale” 架构,将读压力分流至从库,同时保障数据读取的有效性。实际应用中,需结合业务特性调整延迟阈值和连接参数,平衡性能与一致性,构建高可用的数据库服务。
2025-07-23 08:59:01
596
原创 MySQL 8.0 中 LIMIT 优化新特性
MySQL 8.0 引入的参数,为LIMIT与排序结合的查询提供了更精细的优化控制。它的核心价值在于:允许开发者干预优化器对 “排序索引” 的偏好,在 “避免排序” 和 “减少扫描范围” 之间找到平衡。随着 MySQL 优化器的不断进化,这类参数的出现体现了从 “自动最优” 到 “可控优化” 的趋势。掌握这类特性,能帮助开发者在复杂业务场景中更精准地提升查询性能,避免因优化器的 “想当然” 导致的性能陷阱。
2025-07-22 08:52:40
1069
原创 MySQL 排序规则(Collation)详解
MySQL 排序规则是控制字符比较逻辑的关键机制,其核心作用体现在查询阶段的匹配与排序行为。通过理解字符集与排序规则的关联、掌握多层级配置方法,并结合业务场景选择合适的规则(如区分 / 忽略大小写),可确保查询结果符合预期,避免因字符匹配问题导致的业务异常。
2025-07-21 08:57:13
1169
原创 MySQL 三表 JOIN 执行机制深度解析
MySQL 三表 JOIN 的执行机制本质是嵌套循环的多层数据匹配,优化器的成本估算模型受统计信息与索引设计影响显著。在实际应用中,合理的索引设计、控制 JOIN 表数量,以及结合新版本特性(如 HASH JOIN),是提升三表 JOIN 性能的核心手段。通过理论与实践结合,可有效避免因认知误区导致的性能问题。
2025-06-11 10:36:53
461
原创 如何在MySQL 8.0中使用递归CTE?
在 MySQL 8.0 中,递归 CTE(Common Table Expressions,公用表表达式)是一种强大的工具,可用于处理具有层次结构的数据,如组织结构图、文件系统目录等。下面为你详细介绍其使用方法和步骤。
2025-04-22 08:54:57
432
原创 Elasticsearch 集群健康状态检查
或者它 可能有一百个数据节点、三个单独的主节点,以及一小打客户端节点——这些共同操作一千个索引(以及上万个分片)。这种情况Elasticsearch集群所有的主分片已经分片了,但至少还有一个副本是缺失的。这种情况Elasticsearch集群至少一个主分片(以及它的全部副本)都在缺失中。这意味着你在缺少数据:搜索只能返回部分数据,而分配到这个分片上的写入请求会返回一个异常。这种情况Elasticsearch集群所有的主分片和副本分片都已分配, Elasticsearch集群是 100% 可用的。
2025-03-26 08:44:58
822
原创 MySQL误删控制文件导致系统无法正常启动
在 MySQL 中,控制文件记录了数据库的物理结构信息,如数据文件、日志文件的位置等。不同的 MySQL 版本和存储引擎可能有不同的控制文件,常见的如。参数可以让 InnoDB 存储引擎以不同的恢复模式启动,数字 4 表示可以在不进行一些检查的情况下启动,以尝试恢复数据。(InnoDB 存储引擎的数据文件,包含部分控制信息)。如果没有备份,可以尝试重建 InnoDB 的控制文件。如果有最近的数据库备份,这是最理想的解决方式。是 MySQL 的用户名,参数改回 0(正常模式)。
2025-02-19 09:01:05
799
原创 mysql error1449解决方法
将替换为实际的数据库名,替换为实际的存储过程名。将替换为实际的数据库名,替换为实际的函数名。将替换为实际的数据库名,替换为实际的触发器名。如果你认为不需要使用原来的定义者用户,可以修改存储过程、函数或触发器的定义者信息。-- 使用 root 用户重新定义存储过程BEGIN-- 存储过程的具体逻辑END;将rootlocalhost替换为你希望使用的定义者用户,替换为实际的存储过程名。BEGIN-- 函数的具体逻辑END;BEGIN-- 触发器的具体逻辑END;
2025-02-13 17:17:34
714
原创 MySQL索引类型详解
MySQL 提供了多种索引类型,包括 B-Tree 索引、哈希索引、全文索引、空间索引、前缀索引和复合索引。每种索引类型都有其特定的使用场景和优缺点。通过合理选择和使用索引,可以显著提升查询性能,但需要注意索引的维护成本和潜在问题。
2025-02-05 19:15:44
599
原创 GBase 8a数据库故障排查思路
集群默认运行 gcmonit 进程用来监控 gcluster、gcware、gcrecover、gcmmonit、gbase、syncserver 进程,当这些进程意外 down 掉,gcmonit 进程会自动将这些进程拉起。两个进程互相监控,互为保险。在 gbase_8a_gbase.cnf 文 件 中 , gbase_heap_data+gbase_heap_temp+gbase_heap_large> 物 理 内 存×gbase_memory_pct_target,即视为内存设置过大,超过限制。
2025-01-03 08:42:36
1037
原创 解决Bad owner or permissions on .ssh/config 的问题
在使用gei fetch 或者 sftp的时候,出现 Bad owner or permissions on .ssh/config的问题的解决办法。
2024-12-27 18:36:37
695
原创 sudo: unable to resolve host xxxx: Name or service not known
sudo: unable to resolve host xxxx: Name or service not known
2024-10-17 09:04:44
2202
原创 Can‘t connect to local MySQL server through socket
Can't connect to local MySQL server through socket
2024-09-19 08:47:46
1112
1
原创 MySQL 中 Varchar(50) 和 varchar(500) 有什么区别?
MySQL 中 Varchar(50) 和 varchar(500) 有什么区别?
2024-08-15 09:08:43
756
原创 系统 CPU 突然飙升且 GC 频繁,如何排查?
本文主要针对系统运行缓慢、CPU 100%以及Full GC次数过多的问题,定位出问题点,进而提供解决该问题的思路。
2024-07-24 08:47:28
2049
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅