搜索结果: "lock"
共找到 39 个页面
MySQL / Redis 常见故障排查速查清单
**修复**:开启并行复制(`replica_parallel_type=LOGICAL_CLOCK`);避免主库大事务,拆分为小批量;从库使用 SSD。6 大根因逐条拆解与真实案例见 [[mysql-replication-lag-troubleshooting]]。
**现象**:`Deadlock found when trying to get lock; try restarting transaction`
-- 找到 LATEST DETECTED DEADLOCK 部分
SET GLOBAL innodb_print_all_deadlocks = ON;
## 故障 5:元数据锁等待(MDL Lock)
MySQL 备份方案对比与选型 — 从工具原理到生产落地的工程手册
| `FLUSH TABLES WITH READ LOCK` | 全库读锁,阻塞所有写 | mysqldump 无 `--single-transaction` 时 |
| `LOCK INSTANCE FOR BACKUP` | MySQL 8.0,备份期间允许 DML、阻塞 DDL | 需 `BACKUP_ADMIN` 权限 |
| MyISAM 混用 | 快照不支持 MyISAM | 生产库全 InnoDB,或 `--lock-all-tables` |
启动后台线程持续拷贝 redo log → 拷贝所有 InnoDB 数据文件 → InnoDB checkpoint 刷脏页 → 记录最终 LSN → 停 redo 拷贝线程 → 写 `xtrabackup_checkpoints`、`xtrabackup_binlog_info`。整个过程不阻塞 DML,只在最后 `FLUSH TABLES WITH READ LOCK` 极短时间(秒级)锁非 InnoDB 表。
| 8.0 | 8.0 | `--lock-ddl`、`--redo-log-archive`,备份格式与 2.4 不兼容 |
MySQL 性能调优 — 慢查询 / 锁分析 / 死锁排查 / 索引失效 / 深度分页 / 缓冲池 / 配置模板
tags: [mysql, database, performance, monitoring, production, deadlock, lock]
- raw/articles/mysql-deadlock-troubleshooting.md
SHOW PROFILE CPU, BLOCK IO, SWAPS FOR QUERY 1;
-- block io: 磁盘读写耗时
SELECT start_time, query_time, lock_time, rows_sent, rows_examined,
幽灵文件排查 — 删了 200GB 日志磁盘却不释放
sudo stat -Lc 'path=%n size=%s blocks=%b block_unit=%B inode=%i links=%h' "/proc/$pid/fd/$fd"
sudo stat -Lc 'device=%d inode=%i links=%h bytes=%s blocks=%b' "/proc/$pid/fd/$fd"
read -r logical blocks block_size < <(stat -Lc '%s %b %B' "$link")
allocated=$((blocks*block_size))
sudo stat -Lc '%F device=%d inode=%i links=%h size=%s blocks=%b' "/proc/$pid/fd/$fd"
Linux 磁盘故障场景化排查与修复 — 8 大故障场景完整解决方案
## 场景 2:文件系统超级块(Superblock)损坏
**现象:** mount 报错 `Structure needs cleaning` 或 `can't read superblock`。
# Superblock backups stored on blocks:
## 场景 4:磁盘 I/O 错误 / 坏道(Hardware Error / Bad Block)
badblocks -sv /dev/sda > /root/badblocks.txt # 扫描坏道
生产级 Linux 磁盘 IO 调优 — 从核心概念到实战落地
cat /sys/block/sda/queue/scheduler
echo mq-deadline > /sys/block/sda/queue/scheduler
ACTION=="add|change", SUBSYSTEM=="block", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="noop"
ACTION=="add|change", SUBSYSTEM=="block", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="deadline"
cat /sys/block/sda/queue/read_ahead_kb
Linux 进程状态诊断 — 从 R/S/D/T 态看穿系统瓶颈
| **阻塞** (Blocked) | S / D | 等待事件(I/O/网络/锁) | S 可中断;D 不可中断 → 磁盘/NFS 瓶颈 |
Blocked ──事件完成──▶ Ready
### 阻塞状态(Blocked)— I/O 与锁等待
dmesg | tail # 块设备错误 / "task blocked" 信息
# 如果 D 状态无法杀死且 dmesg 有 "task blocked for more than 120 seconds"
Linux rm -rf 误删文件恢复实战指南 — 从事故复盘到数据恢复的完整手册
→ 把对应的 block 标为 free
**关键点:** ext4 在删除时**只是把 block 标记为空闲,并不会清零 block 内容**。所以只要 block 没被新数据覆盖,理论上就能恢复。
- xfs 使用 B+ 树管理 inode(AGI)和 block(AGF)
- xfs 在删除大文件时,extent 分配器会很快把 block 标记为 free,但不会清零
即使文件系统保留 block 不清零,以下情况仍会导致恢复失败:
Nginx 访问日志暴涨排查手册 — 14 步定位异常 URI 与爬虫流量
awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -rn | head -50 | awk '$1 > 100000 {print "deny " $2 ";"}' >> /etc/nginx/conf.d/block_ip.conf
# 屏蔽单个 IP / IP 段(/etc/nginx/conf.d/block_ip.conf)
map $http_user_agent $block_ua {
server { if ($block_ua) { return 403; } }
- **日志采样**(超高频接口):OpenResty `access_by_lua_block { if math.random(100) <= 10 then ngx.var.sample = "1" else ngx.var.sample = "0" end }` + `access_log ... if=$sample`(需 Lua 模块)。
Terraform 基础设施即代码实战 — 从入门到生产
cidr_block = "10.0.0.0/16"
cidr_block = var.vpc_cidr
cidr_block = "10.0.1.0/24"
dynamodb_table = "terraform-locks"
cidr_block = "10.0.0.0/16"
Terraform 基础设施版本控制与 CI/CD 工作流
cidr_block = "10.0.0.0/16"
cidr_block = "10.0.${count.index}.0/24"
cidr_blocks = ["0.0.0.0/0"]
cidr_blocks = ["0.0.0.0/0"]
cidr_blocks = ["0.0.0.0/0"]
Redis 高可用 — 主从复制 / 哨兵 / 脑裂 / 集群踩坑
SETNX lock:order:123 "locked" # 获取锁
DEL lock:order:123 # 释放锁 — 如果业务逻辑崩溃,锁永远不释放
SET lock:order:123
运维工程师面试 50 题 — 经典 Linux/网络/数据库基础全覆盖
### 47. inode 与 block
- **inode**: 存储文件元数据(权限、大小、时间、block 位置)
- **block**: 存储文件实际数据
Linux SSH 防暴力破解脚本 — anti_brute_force.sh 实战部署指南
block - 手动封禁指定 IP
unblock - 解封指定 IP
脚本通过解析系统 SSH 认证日志(`/var/log/auth.log` 或 `/var/log/secure`),使用 `grep "Failed password"` 提取失败登录 IP,按出现次数排序。超过 `MAX_ATTEMPTS` 阈值的 IP 自动通过 `iptables -I INPUT -s
Linux 高频运维命令全梳理 — 生产级命令参考手册
| 定时 | `crontab`, `at`, `flock` |
yum versionlock nginx-1.20.1 # 锁定版本
* * * * * flock -n /tmp/mytask.lock python3 /opt/mytask.py
Wiki Log
- Created raw: raw/articles/mysql-deadlock-troubleshooting.md
- B类 9 页:block 格式 sources + 尾部重复 → 仅保留 frontmatter sources
| 2026-09-07 | ingest | Linux 操作系统常见磁盘故障与完整解决方案(高级运维实战版)(微信公众号「Bob小课堂」2026-07-09) | 新建 raw/articles/2026-09-07-linux-disk-fault-scenario-runbook.md(sha256 f550181d…,5322 字符;原文第 9 节巡检清单为纯图片表格,OCR 还原 6 行存 raw/assets/2026-09-07-disk-fault-checklist-table.png)+ concepts/linux/linux-disk-fault-scenario-runbook.md 主承载页(260 行:前置三铁律 + 8 大故障场景对号入座——只读文件系统 remount/e2fsck、超级块 mkfs -n 查备份点 fsck -b 恢复、Inode 耗尽 rsync 加速删+mkfs -N、坏道 badblocks/dd remap/fsck -l 黑名单/ddrescue 抢救、盘符漂移 blkid+UUID+multipath、挂载夯住 D 状态 umount -l 四步、LVM vgcfgrestore/vgck/pvcreate --uuid 五步恢复、救援模式 ISO 四步 + SRE 巡检清单 6 行表 + 数据库盘坏道先 mysqldump/pg_dump 导出原则,12 出链);查重:既有页均为操作/工具手册视角(partition-mount/space-troubleshooting/smart-prediction/raid-lvm),本文为故障现象→修复场景 runbook,单源核心建新页;增量合并 5 页(partition-mount 案例三补 grub2-mkconfig+multipath 盘符漂移治理 / space-troubleshooting 补 rsync --delete 加速删+mkfs.ext4 -N 扩 Inode / smart-prediction 补坏道处置三步+数据库盘先导出原则 / raid-lvm 补 VG 丢失五步恢复小节 / disk-io-troubleshoot 补挂载夯住 D 状态小节),全部反向补链;index +1(Total 183→184);SCHEMA linux 62→63 页 |
Wiki Schema
- deadlock: 死锁分析
- lock: 锁机制详解
MySQL 连接失败排查指南 — 从报错定位到根因修复
SELECT user, host, account_locked, password_expired FROM mysql.user WHERE user = 'app_user';
ALTER USER 'app_user'@'10.0.0.%' ACCOUNT UNLOCK;
MySQL 慢查询排查案例复盘 — 从发现到根治的完整链路
# Query_time: 4.718782 Lock_time: 0.000162 Rows_sent: 20 Rows_examined: 980000
# Query_time: 0.023401 Lock_time: 0.000108 Rows_sent: 20 Rows_examined: 56218
全栈性能排障方法论 — Nginx → 应用 → 数据库 → 服务器
FROM information_schema.INNODB_LOCK_WAITS w
JOIN information_schema.INNODB_TRX b ON w.blocking_trx_id = b.trx_id
Linux 目录结构完全指南 — FHS 标准与运维实战
└── lock/ # 锁文件
/sys/block/ # 块设备
Linux 高并发内核优化手册 — 文件句柄/网络/内存/调度/I/O/安全七维调优
cat /sys/block/sda/queue/scheduler
echo mq-deadline > /sys/block/sda/queue/scheduler
SMART 磁盘故障预测实战 — 采集管道 + smartd 告警 + XGBoost 模型 + Prometheus 可视化
badblocks -sv /dev/sda > /root/badblocks.txt # 1. 扫描定位坏道
fsck.ext4 -l /root/badblocks.txt -y /dev/sda1 # 3. fsck -l 黑名单标记不再使用
SSH 连接调试完全指南 — ssh -vvv 输出解读 + 服务端日志联查 + 典型问题排查
Authentication refused: User matches Match block with restriction
Authentication refused: User matches Match block with restriction
系统负载高排查实战 — rsyslogd + audit 日志刷屏案例
cat /proc/softirqs | grep -E "NET_RX|NET_TX|BLOCK|TIMER|TASKLET|RCU|SCHED|HRTIMER"
| **BLOCK** | 块设备 I/O | 磁盘 I/O 瓶颈 |
Nginx 日志分析与 4xx/5xx/超时故障排查实战
| `cache lock` | 缓存锁竞争 | 检查缓存配置 |
valid_referers none blocked server_names *.example.com;
MySQL 主从复制指南 — 原理 / 手把手搭建 / GTID / 架构 / 故障排查 / 监控
SET GLOBAL slave_parallel_type = 'LOGICAL_CLOCK';
MySQL 主从延迟排查 — 6 大根因 / 真实案例 / 万能四步流程
- 完整开启命令(`slave_parallel_type = LOGICAL_CLOCK` + `slave_preserve_commit_order`)见 [[mysql-replication-guide]] 的「复制延迟过大」一节
Docker 镜像优化完全指南:瘦身、构建加速与安全加固
COPY package.json package-lock.json ./
CPU 100% 故障排查实战:从告警到根因的全链路分析与 10 大场景
| **多线程锁竞争** | 大量线程 Blocked | `jstack` 搜 `waiting for monitor` | 减小锁粒度、用并发容器 |
Linux 系统负载过高排查思路与实战 — 11 步标准流程与 6 场景修复手册
**系统日志关键字(`journalctl -xe | tail -50` / `dmesg | tail -50`;持续监控用 `journalctl -f`):** `Out of memory`(内存不足)、`I/O error`(磁盘 IO 错误)、`segfault`(进程段错误)、`hung task`(进程卡死)、`soft lockup`(软锁死)/ `hard lockup`(硬锁死)。
Linux 内存管理深潜 — Buffer/Cache/Page Cache/Slab/回收/OOM 全链路
| **Buffer** | 块设备元数据缓存(superblock、inode bitmap 等),加速磁盘元数据操作 | `Buffers` | 内存紧张时可回收 |
Linux 用户管理避坑指南 — /etc/passwd/shadow 到用户安全运维
auth required pam_tally2.so deny=3 unlock_time=600 even_deny_root root_unlock_time=300
scp 与 rsync:服务器文件传输工具用法与优劣解析
**原理:** rsync 使用 rolling checksum 算法,将文件切分为固定大小的块(block),逐块校验对比,只传输发生变化的块。
服务器性能五维排查 — CPU/内存/磁盘/网络/文件系统深度解析
> **`tune2fs -m` 补充边界(2026-09-02 补):** 这是文件系统级变更,仅适用于 ext4 块设备(先 `findmnt -n -o SOURCE /var` 确认),**不要对 XFS 执行**;根分区的保留块是管理员登录和关键服务写入的保障,不要盲目调低;回滚时若新增空间已被业务写满,恢复更高保留比例会让普通用户可用空间进一步下降。查保留量:`tune2fs -l "$device" | grep -E 'Reserved block count|Reserved block percentage'`。详见 [[linux-deleted-file-disk-space-reclaim]]。
TCP 连接数暴涨排查 — 异常流量识别与应对完整手册
- **自动化响应**:Alertmanager webhook 到本地 /block 服务(Flask + subprocess 执行 ipset add blacklist
Keepalived+Nginx 高可用实战 — 3 个隐藏坑位与生产级防护方案
content_by_lua_block {
Nginx 典型配置错误复盘 — 20+ 个踩坑点详解
- 每个 server block 只有一个文件,不跨文件碎片化配置
Wiki Index
- [[linux-disk-fault-scenario-runbook]] — Linux 磁盘故障场景化排查与修复 — 8 大故障场景对号入座:只读文件系统/超级块备份恢复/Inode 耗尽/坏道 badblocks+ddrescue/盘符漂移 UUID 治理/挂载夯住 D 状态/LVM 元数据恢复 vgcfgrestore/救援模式 + 巡检清单与数据库盘先导出原则