Database Management Guide
Learn how to monitor and manage the availability of various database instances registered on the GIIP platform.
📋 Overview
The Database Management menu integrates and manages the status of DB instances that hold your core service data. It supports various engines like Azure SQL, on-premise MSSQL, and MySQL, allowing you to proactively detect performance degradation or failures.
🔍 Key Features
1. Instance Monitoring
- Real-time Status: Visualizes DB activity, CPU usage, memory utilization, and disk space.
- Connection Count: Monitor the number of sessions currently connected to the DB to prevent connection pool exhaustion.
2. Performance Analysis & Query Optimization
- Slow Query Detection: Automatically extracts long-running queries and sends notifications to developers.
- Execution Plan Checks: Analyzes execution plans for specific SQL statements and provides index optimization suggestions.
3. Backup & Availability Verification
- Last Backup Time: Verifies if regular backups were performed successfully.
- HA Status: Checks replication or mirroring status to evaluate the risk of data loss.
🛠️ Management Steps
- Navigate to the GIIP [Infrastructure Management] > [Database Management] menu.
- Click the DB instance you want to manage from the list.
- Check performance metrics in the [Metrics] tab and analyze currently running queries in the [Queries] tab.
💡 Tips
- Threshold Alerts: Set Slack alerts for when DB CPU exceeds 80% to respond proactively.
- Rightsizing: Refer to AI-driven cost optimization reports to reduce costs by downsizing over-configured DB specs relative to actual usage.
API Reference
For detailed API specifications of this feature, refer to the separate guide.
Troubleshooting
| Symptom | Cause | Solution |
|---|---|---|
| A DB instance's real-time status is missing or appears inactive | Incorrect connection info or the instance is unreachable | Open the instance from the [Database Management] list, verify its connection info, and confirm the target engine (Azure SQL/MSSQL/MySQL) is reachable. |
| Connection count keeps rising toward its limit | Connection pool exhaustion from unclosed sessions | Check the connection count in the [Metrics] tab, then identify and close idle sessions. |
| No Slack alert arrives even though DB CPU is high | Threshold alert is not configured | Configure a threshold alert to notify Slack when DB CPU exceeds 80%. |
| Slow Query notifications are not received | No long-running queries were detected, or they were not reviewed | Check running queries in the [Queries] tab, analyze the execution plan, and apply the suggested index optimization. |
Version: 1.0
Last Updated: 2026-03-19
Source: giipv3/public/help/database-management.en.md