自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

需要远程指导仿真实验、代码有问题的,请后台私信。

是你们的每一份支持,撑着我在写作的路上走得更远。

  • 博客(121)
  • 收藏
  • 关注

原创 Terraform Provider 与 Resource:块结构、参数与依赖推导

本文以 Terraform 1.9.5 与 hashicorp/aws 5.62 的实战配置为例,从 required_providers 声明、provider 配置块、资源类型前缀与本地名、元参数、依赖推导到 ForceNew 重建判定,系统梳理 Provider 与 Resource 的配合方式,并结合 plan 符号、常见报错与检查清单,说明改参数前如何识别 `-/+` 重建风险。

2026-11-02 09:30:49 311 1

原创 Terraform 测试与排错:Terratest、状态锁与 Provider 故障

本文以“CI 里 apply 卡在 `Error acquiring the state lock`,人工 force-unlock 后 serial 对不上,才开始系统补测试”开头,讲 Terraform 的测试与排错,覆盖测试分层、原生 `terraform test`、Terratest 断言、state 锁、状态漂移、依赖环与 Provider 报错,末尾给复盘模板。

2026-10-30 09:25:27 284

原创 云项目可观测性与成本治理:告警、日志、Dashboard 与预算标签

文章以“账单涨47%说不清原因、502挂26分钟才发现”开头,讲可观测性与成本治理:统一日志字段与保留期、三条关键告警、三块Dashboard、预测型预算、成本分摊标签,核心是砍日志摄入费、用标签把成本分摊到服务。

2026-10-29 19:18:59 252

原创 EKS 可销毁环境:集群创建、应用部署到账单归零

文章以“一次练手集群只删了节点组,NAT 网关和两个 ELB 挂了 11 天,账单多出 96 美元”开头,讲一套用完就拆的 EKS 环境:覆盖版本与权限、成本结构、资源边界、集群与应用部署、销毁顺序和残留复核,强调先让 K8s 收回云资源、再 `terraform destroy`、最后按 ENI 反查残留,五项计数归零才算结束。

2026-10-29 19:14:43 49 1

原创 Terraform 云网络与计算:VPC 到 ALB 的全链路

本文以用 Terraform 在 AWS 上搭建云网络与计算底座为主线,覆盖网段规划、VPC 与子网、路由与 NAT、安全组、EC2、ALB 目标组与健康检查,起因是 ALB 只挂一个子网导致 apply 报错。

2026-10-28 09:40:12 472

原创 Terraform 安全扫描与策略合规:checkov、tfsec 与 OPA 门禁

本文以一次 IAM 通配符策略误合入生产的事故为引,系统梳理 Terraform 配置安全扫描与策略合规的完整链路:checkov 源码扫描、tfsec 迁移 Trivy、plan JSON 上的 OPA IAM 最小权限判定、合规基线与例外登记、infracost 成本门禁,并给出可落地的 CI 流水线串接与排障清单。

2026-10-27 17:04:47 129

原创 Terraform 多环境管理:目录结构、tfvars 与独立 state

本文以一套 Terraform 配置管 dev/staging/prod 为主线,讲清目录分层、backend 独立 state、tfvars 覆盖顺序与模块复用。通过 backend.hcl 分离 key、common 与 env 两级 tfvars、lifecycle 防呆,把环境差异压进变量、把隔离边界写进文件,避免一次 apply 改错环境。

2026-10-26 23:28:23 339

原创 Terraform CI_CD 流水线:fmt、validate、plan 与审批 apply

本文以一套可落地的 Terraform CI/CD 流水线为主线,讲清五阶段门禁:fmt、validate、plan、审批、apply。围绕远端 state 与凭据管理,给出 GitHub Actions、GitLab CI、Jenkins 三套实现,并覆盖 tfplan 产物传递、并发锁、漂移检测与常见排障,帮你把本地干净的 plan 稳定搬进流水线。

2026-10-26 23:23:36 269

原创 Terraform 基础:安装、Provider 配置与首个资源

本文以 Terraform 从安装到跑出第一个资源的完整流程为主线,覆盖 Windows、macOS、Ubuntu 三种安装方式与 tfenv 版本切换,讲解配置、状态、Provider 三个核心对象的关系,以及 Provider 声明、版本约束与认证配置,最后通过 S3 桶示例走通 init/plan/apply/destroy 四步循环,并附常见报错排查清单。

2026-10-23 11:15:33 423 1

原创 Terraform 敏感信息管理:sensitive 标记、外部密钥源与 state 加密

本文以CI日志泄露RDS密码的教训开篇,系统讲解Terraform敏感信息的五个落点、sensitive标记边界、SSM与Secrets Manager及Vault三种外部密钥源接入、S3后端加固、OIDC临时凭据与轮转配合,附常见报错和检查清单。

2026-10-22 09:36:21 167

原创 Terraform 模块版本管理:约束语法、源类型与升级策略

本文以“文章简介”为切入点,围绕100字以内的精简表达展开,探讨如何在有限篇幅内准确概括文章核心内容。通过分析简介的写作要点与常见误区,提出以“本文以……”开头的规范句式,帮助读者快速掌握高效撰写文章简介的方法,提升信息传递的准确性与简洁性。

2026-10-22 08:44:02 316

原创 Terraform 模块组合:VPC、安全组、EC2 的输出传递与依赖编排

本文以一次真实的 `InvalidSubnetID.NotFound` 报错为引子,系统讲解 Terraform 模块拆分后的依赖与输出管理:从三层模块划分、`outputs.tf` 的声明与消费、隐式依赖与 `depends_on` 的取舍、循环依赖的破环,到用 `for_each` + `map(object)` 组合多环境、输出向上汇聚与敏感值传播,最后附常见报错排查表和组合检查清单。

2026-10-21 10:35:02 225

原创 编写第一个 Terraform Module:结构、输入输出与变量校验

本文以三套环境 S3 配置各抄一份、漏改参数导致 dev 与 prod 前缀冲突的真实踩坑开头,引出 Terraform 模块化改造。全文围绕 `variables.tf` / `main.tf` / `outputs.tf` 三段结构,讲清输入、输出、变量校验与 `state mv` 迁移步骤,帮你把复制粘贴收敛成可复用模块,让 plan 稳定输出 No changes。

2026-10-21 10:05:59 362

原创 Terraform 从“一个人的文件”到“团队的服务”:远程状态与锁要解决什么

本文以“远程后端不是为了备份状态文件”切入,指出本地 `terraform.tfstate` 在团队协作中暴露的三个失效方式,再沿共享、加锁、可恢复三条能力线,对比 S3 + DynamoDB 与 Terraform Cloud 两条路线,并给出锁冲突处理、权限收紧和状态拆分上的实操判断。

2026-10-20 11:26:59 182

原创 Terraform State 与本地状态实战拆解

本文以把 `resource "aws_instance" "web"` 改名为 `api_server`、`terraform plan` 却显示 `1 to destroy` 的事故开头,讲清 Terraform 认地址不认名字的 state 账本原理,并给出 `state mv`、`moved` 块、`state rm` 等不重建资源的命令与敏感信息处置方法。

2026-10-19 08:48:38 260

原创 Terraform depends_on、lifecycle 与元参数:依赖、顺序与变更控制

本文以 `terraform apply` 执行到一半、实例已建好但启动脚本刷 403 的事故开头,剖析 Terraform 依赖图与执行顺序:讲清 `depends_on` 何时必须写、写了为何更保守,以及 `lifecycle` 四个参数如何改变替换顺序与更新行为,并给出读 plan 符号与命令验证方法。

2026-10-19 08:39:21 256

原创 Terraform 循环与动态资源:count、for_each 与 dynamic

本文从一次真实事故出发:列表只删掉一个元素,Terraform plan 却给出 2 to change、1 to destroy。文章讲清 count、for_each、dynamic 三个循环元参数的追踪机制、能力边界与选型方法,说明索引漂移的根因,并给出避坑与状态迁移要点。

2026-10-14 22:33:36 367

原创 公有云算力布局的技术逻辑与工程实践

文章通过三个现场现象说明“算力均质”假设的错误,进而提出 PD 分离、中训边推、训推一体配额抢占等工程方案,并用中国电信、阿里云 PAI、CENI 等实践验证:算力该集中的地方集中,该下沉的地方下沉,把“算不了、算不好、算不起”变成可调度的工程问题。

2026-10-11 23:02:38 379 1

原创 Docker常见故障全方位排查指南

以本文以"凌晨线上容器集体 Exited,连敲 docker ps 都没反应"这一真实事故切入,把 Docker 故障排查收敛成一条清晰的决策链路:从守护进程、容器启动、镜像拉取、容器网络、存储权限到通用命令速查,六个环节层层递进。

2026-10-10 11:34:13 3250 13

原创 利用GitHub配置镜像加速,解决 Docker镜像拉取问题

本文以国内拉取 Docker 镜像超时为切入点,介绍如何利用 GitHub Actions 的海外运行器代拉镜像,打包后下载回本地加载使用。不买代理、不租服务器,附完整配置和实操步骤。

2026-10-10 10:58:40 11825 109

原创 SQL 面试高频:用户、商品、订单三表查询全解析

本文以用户、商品、订单三表为核心,系统讲解电商场景下的 SQL 关联查询、聚合统计、子查询与综合实战。从表结构到业务拆解,帮你理清三表查询思路,掌握高频面试与工作必备技能。

2026-10-05 23:14:54 555

原创 MYSQL从语义到执行计划:UNION、EXISTS、IN 的深度辨析

**本文以 UNION、EXISTS、IN 三个高频 SQL 关键字为切入点,辨析集合运算与存在判断两大语义家族的本质差异。文章不讲“哪个更快”的绝对结论,而是从执行路径、NULL 语义、索引依赖和优化器改写出发,给出可验证的选型方法与实战建议。**

2026-10-05 22:46:05 7238 51

原创 mysql数据库视图笔记:创建、修改、删除与适用场景

本文以一段被复制十几遍的三表连接 SQL 为引,讲透视图的创建、修改、删除、授权与可更新判定:视图不存数据,只存 SELECT 定义,能收敛重复逻辑、统一统计口径,也能做行列权限隔离。文中复盘底表改列失效、视图写不进去、DROP 重建丢授权、嵌套视图性能崩四个生产坑,并给出可更新视图判定、WITH CHECK OPTION 拦截、依赖查询等实操方案,最后说明普通视图与物化视图的适用边界。

2026-10-04 20:05:33 208

原创 子查询全解析:WHERE、FROM、SELECT 三大场景与标量、列、相关子查询实战

本文以一条“查不在销售部员工”的线上报表故障为引,揭示 NOT IN 遇上 NULL 导致结果恒为空的隐患。随后沿真实需求链,系统拆解 WHERE、FROM、SELECT 中的标量、列、相关三类子查询,并给出窗口函数、CTE、NOT EXISTS 等改写方案,帮你一次避开 NULL、多行与性能三大坑。

2026-10-04 19:39:50 206

原创 自连接、交叉连接与复杂 JOIN:一条问题链讲透

本文以“我曾把员工查经理的 SQL 里的 `LEFT JOIN` 写成 `INNER JOIN`,结果 CEO 整个人从报表里消失了,我对着结果数了半小时人头”这个真实踩坑开头,把自连接、交叉连接、复杂 JOIN 串成一条递进问题链:从自连接的角色与方向,到交叉连接的风险与合法用途,再到 CTE 拆解多层关联。读完你能独立拆解多层关联查询,并避开我踩过的每一个坑。

2026-10-03 21:26:07 351

原创 多表查询基础:INNER JOIN、LEFT JOIN、RIGHT JOIN

本文以线上真实踩坑开头:右表过滤条件写进 WHERE,LEFT JOIN 悄悄退化成 INNER JOIN,报表里「零订单用户」整列消失三天无人发现。再用一套电商数据,把三种 JOIN 的差异、ON 与 WHERE 的区别、笛卡尔积坑逐个跑给你看,照着写就能避开。

2026-10-03 20:51:09 341

原创 SQL 基础综合练习:学生成绩表与订单表 30 题

本文以学生成绩表和订单表为主线,通过30道递进练习,帮助初学者把零散SQL语法练成“看懂需求、拆开步骤、写稳语句”的固定手感。内容覆盖基础查询、排序聚合、分组统计、连接子查询及更新建表,重点提醒NULL判断、WHERE与HAVING区别、连接条件及写操作安全等常见坑,适合新手系统巩固SQL核心用法。

2026-10-02 12:44:31 6936 51

原创 mysql数据库常用数值函数、流程函数与 CASE WHEN

本文以“CASE WHEN 行转列为什么总要套一层 MAX?”为主线,串起数值函数、条件分支与聚合透视。核心结论:CASE WHEN 只做行级取值,GROUP BY 必须靠聚合把多行压成一行,MAX 就是最常用的合并规则。再避开取整口径、NULL 与 ELSE、COUNT/SUM 差异三处暗坑,即可写出跨库通用的行转列查询。

2026-10-02 12:22:04 192

原创 一个 NULL 让整列姓名消失?MySQL 字符串与日期函数复盘

本文以一条报表处理链为线索,复盘 MySQL 字符串与日期函数的高频踩坑点:CONCAT 遇 NULL 导致整列坍塌,应改用 CONCAT_WS;SUBSTRING 索引从 1 开始;DATE_FORMAT 格式符大小写语义不同;STR_TO_DATE 解析失败只返回 NULL 不报错。文末用一条 SQL 串起拼接、格式化、填充与日期运算,并附速查表与官方参考链接。

2026-10-01 23:59:52 318 1

原创 mysql数据库分组查询:GROUP BY 与 HAVING 的执行逻辑

本文以“聚合条件写 WHERE 报错,挪到 HAVING 就出结果”开头,说明 SQL 按逻辑顺序执行:FROM→WHERE→GROUP BY→聚合→HAVING→SELECT→ORDER BY→LIMIT。WHERE 在分组前过滤原始行,碰不到聚合值;HAVING 在聚合后过滤分组。原则:行过滤用 WHERE,组过滤用 HAVING,能提前过滤就别拖后。

2026-10-01 23:33:09 339

原创 聚合函数:COUNT、SUM、AVG、MAX、MIN 一篇讲透

本文从同一张订单表中 `COUNT(*)` 为 6、`COUNT(amount)` 却为 4 的现象切入,揭示空值被聚合函数跳过的底层逻辑。围绕计数、求和、平均值、极值与分组过滤,系统讲解空值处理规则、条件聚合的 `CASE` 写法、`WHERE` 与 `HAVING` 的分工、极值取整行的子查询与窗口函数方案,并给出建表验证脚本与术语速查表,帮你把对账口径一次核对清楚。

2026-09-30 11:15:55 1360

原创 条件查询进阶:AND、OR、IN、BETWEEN、LIKE、IS NULL

本文从一条少写括号导致报表对不上账的真实故障讲起,基于 MySQL 8.0,用一张可复现的员工测试表,把 AND、OR、IN、BETWEEN、LIKE、IS NULL 六类条件查询的写法、坑点和索引行为一次讲透。

2026-09-29 23:56:28 567

原创 SELECT / WHERE / ORDER BY / LIMIT:一次把查询写对

本文以 SELECT 写在首位、执行却排第三切入,讲透 MySQL 书写顺序与执行顺序。围绕 student 表,拆解 SELECT 选列别名去重、WHERE 筛行运算符与易错坑、ORDER BY 排序、LIMIT 分页,并用综合 SQL 串起链路。核心一句:FROM → WHERE → SELECT → ORDER BY → LIMIT,背熟它,别名、排序、分页的坑都能推出来。

2026-09-29 09:20:23 335

原创 数据库增删改的安全写法

本文聚焦 MySQL 增删改操作的安全写法,围绕 INSERT、UPDATE、DELETE 三条语句展开。重点剖析 WHERE 条件失控导致的批量误改、误删事故,给出主键精准匹配、先 SELECT 后操作、事务包裹核对等实用规范。同时对比 DELETE、TRUNCATE、DROP 的破坏力差异,提倡逻辑删除与生产权限管控,帮助读者在不搞挂生产库的前提下完成数据修改。

2026-09-28 10:37:01 3969

原创 从零学会 MySQL 建库、改表、删表

本文围绕 MySQL 数据定义语言(DDL)展开,以「学生管理库」为例,完整演示数据库从建库、建表到改结构、删除的全过程。重点讲解 CREATE、ALTER、DROP 三条语句的作用对象与区别,强调 DDL 操作结构、不可回滚的特性。同时给出字符集、存储引擎、字段约束等建表规范,并总结删库删表前的备份与核对要点,帮助读者避开常见坑。

2026-09-28 09:06:42 3926

原创 数据库冷热分离

携程订单默认只留 30 天,超期需手机号查询,背后是冷热分离:热库存可修改的活跃数据,冷库存终态只读数据。数据价值取决于被使用程度,终态数据只剩读价值。本文讲清冷热分离的适用场景、冷热判断、三种实现方案及最大坑——数据一致性。

2026-09-25 18:38:48 5151 37

原创 PostgreSQL 事务与并发控制

PostgreSQL 事务与并发控制的核心:事务是数据库最小逻辑单位,ACID 是其底线;并发会产生脏读、不可重复读、幻读和串行化异常,隔离级别按防护程度划分。PG 只实现三种级别,默认读已提交,可重复读已能防幻读。底层靠锁和 MVCC 兜底,MVCC 通过 xmin、xmax、cmin、cmax 四个隐藏列判断行版本可见性。此外,PG 支持 DDL 事务和 savepoint,分布式事务用两阶段提交实现。

2026-09-25 14:14:33 4134

原创 SQL 语句总结(SQL Server 常用语法速查)

这篇笔记全面汇总了 SQL Server 的常用操作语句,涵盖建库建表、增删改查、连接与分组查询、分页、数据备份恢复、系统函数,以及跨库操作和经典数据开发技巧。内容以速查手册形式组织,分类清晰,方便开发者在实际工作中遇到问题时快速定位并参考使用。

2026-09-24 09:21:32 572

原创 MySQL 数据库开发规范:环境、命名、表设计、索引、SQL 语句

这份规范涵盖 MySQL 环境权限、命名、表设计、索引、SQL 语句、分表及行为红线。核心要求:统一小写命名、用 InnoDB 和 utf8mb4、主键自增、必带时间与软删除字段;索引不超 5 个、遵循最左前缀;SQL 禁用 select *、子查询和负向查询,推荐预编译与批量提交

2026-09-22 23:14:47 3990 1

原创 十个高级 SQL 概念

这篇文章介绍了10个SQL实用技巧:CTE模块化拆解子查询、递归CTE处理分层数据、临时函数封装重复逻辑、CASE WHEN枢转数据、EXCEPT与NOT IN的区别、自联结、三种排名函数的差异、用LAG/LEAD计算差值、SUM窗口函数算运行总数、日期时间操纵。

2026-09-22 22:00:50 3735

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除