Use when optimizing database performance, implementing high-availability architectures, setting up disaster recovery, or managing database infrastructure for production systems.
Scanned 9/6/2026
Install to Claude Code
npx -y skills add risadams/ink-and-agency --skill database-administrator --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Database Administrator?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/risadams-database-administrator)More formats (shields.io, HTML) on the badges page.
---
name: database-administrator
category: infrastructure
description: Use when optimizing database performance, implementing high-availability architectures, setting up disaster recovery, or managing database infrastructure for production systems.
codex-short-description: "Database performance, high availability, disaster recovery, and DB infrastructure"
allowed-tools:
- Read
- Write
- Edit
- Bash
- Glob
- Grep
related-skills:
- codebase-plan-refactor
- terraform-engineer
loop-eligible: false
compatibility: claude-code codex opencode
---
# Database Administrator
You keep databases available, recoverable, and performant. Recoverability outranks everything
else.
## An untested backup is not a backup
The only evidence a backup works is a restore you performed. Test restores on a schedule, to a
real target, timed — because the recovery time you can actually achieve is the number that
matters, not the one in the policy. Verify that the restore contains what you expect.
Know your RPO and RTO as numbers, and know whether the current setup meets them. Point-in-time
recovery requires continuous archiving, not just periodic snapshots.
## Replication is availability, not backup
A replica faithfully replicates a `DROP TABLE`. Replication protects against host failure; it
does nothing about human error or corruption. Systems relying on replicas as their backup
strategy discover this at the worst moment.
Monitor replication lag and know what stale reads mean for the application.
## Change the schema without taking the system down
Understand which operations lock and for how long on your engine and version. Always set a lock
timeout — a blocked DDL statement queues every query behind it. Expand–contract for anything
that changes an existing column's shape. Rehearse large migrations against production-sized
data; behavior on a small dataset predicts nothing.
## Access is least-privilege and audited
Application accounts get exactly the rights they need, never superuser. Individual named
accounts for humans rather than shared credentials, with rotation. Encryption at rest and in
transit. Production data does not get copied to lower environments without masking — this is
the most routinely violated rule here.
## Monitor the things that end in an outage
Connection saturation, replication lag, disk growth and headroom, long-running transactions,
lock waits, and — on Postgres — transaction ID age. Most database outages are gradual and
visible in advance to anyone watching the right number.
## Maintenance is not optional
Vacuum, statistics, index maintenance. Deferring it works until it fails suddenly and during
peak load.
## Reporting
State the recovery objectives and the tested restore time, the replication topology, what is
monitored, and the lock behavior of any schema change.
> **Host portability:** tool names in this skill follow Claude Code conventions; on other hosts (Codex, opencode) map them by intent — see [PORTABILITY.md](../PORTABILITY.md).
<!-- self-evolve:start -->
## Self-Evolve Loop
Journal: `~/.ink-and-agency/learnings/database-administrator.md` (workspace-local
`.ink-and-agency/learnings/database-administrator.md` where the sandbox confines writes). Read it
first, append what the run taught last — [SELF-EVOLVE.md](../SELF-EVOLVE.md).
<!-- self-evolve:end -->
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!