🐧

运维日志

专注 Linux 系统运维与数据库运维技术分享,记录踩坑经验,沉淀最佳实践。

最新文章

查看全部 →
给千万行大表加字段不锁表:pt-online-schema-change 与 gh-ost 实战
数据库运维11 min read

给千万行大表加字段不锁表:pt-online-schema-change 与 gh-ost 实战

一张 5000 万行的订单表要加个索引,直接 ALTER 一跑,写入全卡、连接堆成山、从库延迟飙到几分钟——这是每个 DBA 都挨过的打。MySQL 8.0 的 ALGORITHM=INSTANT 覆盖不了所有场景,真要大表变更得靠 pt-online-schema-change 和 gh-ost 这类影子表工具。一个用触发器、一个靠 binlog,把两条路都跑通,连同坑点一起摊开。

Too many open files:ulimit、LimitNOFILE 与 fd 泄漏的完整排查链路
Linux运维12 min read

Too many open files:ulimit、LimitNOFILE 与 fd 泄漏的完整排查链路

服务半夜开始报错 accept4() failed (24: Too many open files),或者 Nginx 频繁 502。这种故障十次有八次是文件句柄(fd)耗尽,但光改 ulimit -n 往往没用——因为 systemd 起的服务根本不吃 limits.conf 那套。从内核 file-max 到进程 LimitNOFILE,到定位到底是哪个进程在漏 fd,把每一层都讲透,并给出不停机临时救急和永久修复两条路。

PostgreSQL 物理备份与时间恢复(PITR):一次 basebackup 到任意时间点的完整链路
数据库运维12 min read

PostgreSQL 物理备份与时间恢复(PITR):一次 basebackup 到任意时间点的完整链路

pg_dump 是逻辑备份,做不了时间点恢复,库一大还慢得离谱。真要扛误删表、误更新全表这种事故,得靠物理备份加 WAL 归档的 PITR。从建备份账号、开归档、跑 pg_basebackup,到真的把库恢复到「出事前一秒」,把每一步命令和每个坑都摊开讲。

磁盘显示没满却写不进去:df 和 du 对不上的三种真实场景
Linux运维12 min read

磁盘显示没满却写不进去:df 和 du 对不上的三种真实场景

报警说磁盘 100%,可 du 加起来差了一大截;或者 df -h 明明还有空间,应用却报 No space left on device。这两种情况我都遇过不止一次,根因通常是已删除但被进程占用的文件、inode 耗尽,或者文件被挂载点盖住。逐个拆开讲怎么定位、怎么在不重启服务的前提下把空间腾出来。

索引不是加得越多越好:一次索引重构的记录
数据库运维9 min read

索引不是加得越多越好:一次索引重构的记录

打开表结构,14 个索引,其中 6 个是单列索引,还有几个前缀完全重复。这张 2000 万的表写入从 2000 TPS 掉到 600,磁盘占用比数据本身还大——索引比数据多。 索引不是越多越好。每多一个索引,每次 INSERT/UPDATE/DELETE 都要多维护一棵 B+ 树,写入成本实实在

会员管理系统

FREE支持定制

完全免费的会员管理系统,开箱即用。 支持会员信息管理、积分体系、消费记录等核心功能。 接受定制化开发 —— 无论你需要接入微信支付、定制报表、还是对接现有ERP系统,都可以按需开发,交付源码。

Web端管理后台会员信息管理积分系统消费记录数据导出定制化开发交付源码
了解更多

热门标签

专栏分类