摘要:每当复制集在选举中替换主节点时,旧主节点可能包含未复制到辅助节点的文档。在这种情况下,旧的主节点会回滚这些写入内容。在回滚过程中,节点将处于 ROLLBACK 状态。处于 ROLLBACK 状态的节点有资格在选举中投票。 从 4.2 版开始,当节点进入 ROLLBACK 状态时,MongoDB 会杀 阅读全文
如何处理monogdb的慢查询
2024-09-19 13:21 by abce, 43 阅读, 0 推荐, 收藏, 编辑
摘要:识别慢查询 有几种方法可以用来查看mongodb中的慢查询。 1.使用profiler 如何使用profiler,需要参考之前的笔记。 清空profiler内容: > use mydb; > db.system.profile.remove(); 2.使用db.currentOp() 此方法是实时分 阅读全文
MySQL Error Log: Got packets out of order
2024-09-18 14:29 by abce, 199 阅读, 0 推荐, 收藏, 编辑
摘要:在MySQL错误日志中发现有偶发的如下信息: 2024-09-13T15:55:29.489324+08:00 26750047 [Note] [MY-010914] [Server] Got packets out of order 2024-09-13T15:55:29.544688+08:00 阅读全文
SQL Server 的死锁
2024-09-16 21:09 by abce, 321 阅读, 0 推荐, 收藏, 编辑
摘要:死锁经常与正常阻塞混淆。当一个事务请求对另一个事务锁定的资源加锁时,请求加锁的事务会等待直到锁被释放。默认情况下,除非设置了 LOCK_TIMEOUT,否则 SQL Server 事务不会超时。请求事务被阻塞,而不是死锁,因为请求事务没有做任何事情来阻塞持有锁的事务。最终,持有锁的事务将完成并释放锁 阅读全文
SQLServer 如何收集数据以排除 SQL 死锁问题
2024-09-06 13:12 by abce, 99 阅读, 0 推荐, 收藏, 编辑
摘要:方案一 使用 SQL Profiler 跟踪工具捕获死锁数据: 1.登录 SQL Server Management Studio2.单击工具、SQL Server Profiler,然后进行身份验证3.单击"事件选择"选项。4.取消选择所有选项。5.单击以下两个选项: ·显示所有列 ·显示所有事件 阅读全文
MongoDB 复制集节点间数据大小差异的处理
2024-09-04 21:39 by abce, 36 阅读, 0 推荐, 收藏, 编辑
摘要:在使用 WiredTiger 存储引擎的MongoDB 复制集环境中,可能会遇到主节点和辅助节点之间数据大小不一致的情况。出现这种问题时,辅助节点使用的磁盘空间会大大超过主节点。这个问题的原因是有很高比例的脏页,加上需要在内存中保存大量文档的缓存来满足"majority concern",从而导致辅 阅读全文
欺骗性的警告信息:InnoDB 行大小限制的奇特案例
2024-09-01 17:01 by abce, 103 阅读, 0 推荐, 收藏, 编辑
摘要:记得之前在测试环境遇到过类似的问题,让开发缩短了列的长度,但是没有进一步深究,今天看到这个文章,又做了一下模拟,发觉问题还存在,需要继续关注。以下是模拟学习的过程。原文地址:https://www.percona.com/blog/when-warnings-deceive-the-curious- 阅读全文
调整 MongoDB 以适应批量加载
2024-08-28 09:04 by abce, 19 阅读, 0 推荐, 收藏, 编辑
摘要:将几十亿条记录加载到 MongoDB 中,开始时加载速度还不错,但一段时间后就开始明显放缓。通过观察指标进行了一些研究,发现随着时间的推移,WiredTiger 的检查点时间越来越长。检查点时间从最初的几秒到后面的几分钟。在检查点期间,性能基本上是直线下降: WiredTiger检查点 从 Mong 阅读全文
MySQL 持久化系统变量
2024-08-23 14:27 by abce, 36 阅读, 0 推荐, 收藏, 编辑
摘要:set persist会将变量持久化到文件 mysqld-auto.cnf 文件中,该文件位于数据目录下。reset persist会移除 mysqld-auto.cnf 文件中持久化的变量。 MySQL 可以在运行时持久化全局系统变量。虽然许多系统变量可以在启动时通过 my.cnf 配置文件设置, 阅读全文
MySQL 通过set global设置变量的注意点
2024-08-21 13:25 by abce, 94 阅读, 0 推荐, 收藏, 编辑
摘要:今天有人问,为什么他修改动态变量 log_output 的时候,部分可以设置成功,部分设置失败,具体现象如下: root@localhost (none)>show variables like 'log_output'; + + + | Variable_name | Value | + + + 阅读全文