database-admin

Diagnose and troubleshoot RDS, DynamoDB, and ElastiCache performance and availability issues.

3|1|Updated Feb 14, 2026
One-click install
npx skills add https://github.com/LiboMa/agenticops-chat --skill database-admin-liboma
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: database-admin
Source: https://github.com/LiboMa/agenticops-chat/tree/main/skills/database-admin
Command: npx skills add https://github.com/LiboMa/agenticops-chat --skill database-admin-liboma

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Database incidents like slow queries, connection exhaustion, replication lag, deadlocks, and storage-full events require deep engine-specific knowledge to diagnose quickly. This Skill provides structured decision trees, diagnostic SQL, AWS CLI commands, and CloudWatch metric thresholds so you can identify root causes and apply fixes for RDS (MySQL, PostgreSQL, Oracle, SQL Server), DynamoDB, and ElastiCache/Redis without searching through documentation. ## Core Features & Use Cases - Guided Troubleshooting Decision Trees: Step-by-step flows for connection failures, connection limit exhaustion, slow queries (MySQL and PostgreSQL), replication lag, DynamoDB throttling, and Redis memory/connection issues. - Emergency Response Runbooks: Ready-to-run commands for storage-full events, point-in-time restores, snapshot copies, parameter group tuning, and RDS Proxy setup for connection pooling. - Deep-Dive References: Detailed guides covering DynamoDB partition key design, GSI/LSI strategy, DAX caching, Redis data structures and eviction policies, MySQL InnoDB internals, and PostgreSQL VACUUM, pg_stat_statements, and PgBouncer. - Use Case: Your RDS MySQL instance hits max connections during a traffic spike. Follow the connection limit tree to identify idle sessions, then implement RDS Proxy for pooling and tune max_connections via the parameter group. ## Quick Start Ask the agent to diagnose why your RDS PostgreSQL database has high CPU and slow queries, and it will walk through pg_stat_activity, EXPLAIN ANALYZE, and index usage checks.

Frequently Asked Questions about database-admin

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I troubleshoot RDS connection issues?▼

Check instance status with aws rds describe-db-instances, then verify the security group allows the source IP on the correct port, confirm subnet group and VPC placement, and check public accessibility for external connections. Storage-full or incompatible-parameters states require immediate storage or parameter group fixes.

How to fix max connections exhaustion on RDS MySQL or PostgreSQL?▼

Identify idle connections with SHOW PROCESSLIST or pg_stat_activity, then kill idle sessions as a short-term fix. Long-term solutions include connection pooling with RDS Proxy, PgBouncer, or ProxySQL, increasing max_connections in the parameter group, or scaling to a larger instance class.

Why is my DynamoDB table being throttled?▼

Throttling usually comes from hot partitions where one partition key receives disproportionate traffic, or from exceeding provisioned RCU/WCU. Check CloudWatch ThrottledRequests metrics, consider switching to on-demand mode, enable Contributor Insights to find hot keys, or add DAX for read-heavy workloads.

What causes PostgreSQL table bloat and how do I fix it?▼

MVCC creates dead tuples on every UPDATE or DELETE, and without timely VACUUM they accumulate as bloat. Tune autovacuum scale factors per table for large tables, check n_dead_tup in pg_stat_user_tables, and use VACUUM FULL cautiously since it locks the table.

Which Redis eviction policy should I use on ElastiCache?▼

Use allkeys-lfu for most caching workloads since it evicts least frequently used keys rather than just least recently used. Use noeviction when data must never be lost, and volatile-ttl when TTL reflects data importance. Monitor the Evictions CloudWatch metric after changing policies.

How do I restore an RDS database to a point in time?▼

Use aws rds restore-db-instance-to-point-in-time with the source instance identifier and target restore time. The restored instance always gets a new endpoint, so you must update application connection strings afterward. For cross-region recovery, copy the snapshot first, then restore.