Data Monitoring / MySQL Monitoring
MySQL: Threads running versus connected
MySQL has many connections but only a few statements executing. Compare Threads_connected and Threads_running with application pool waits.
Environment and inputs: MySQL 8.4 baseline; Performance Schema consumers, privileges and replication topology affect evidence availability.
Failure scenario
MySQL has many connections but only a few statements executing. Confirm the cause before choosing a fix.
Evidence to collect
Compare Threads_connected and Threads_running with application pool waits. Record the time, affected scope and a healthy comparison interval.
Worked diagnostic example
Read-only MySQL status snapshot; repeat with timestamps to understand behavior over an interval.
SHOW GLOBAL STATUS
WHERE Variable_name IN ('Threads_connected', 'Threads_running', 'Uptime');
Fix the confirmed cause
Separate idle connection inventory from active workload before increasing resources. Write the expected result first. Change one relevant setting at a time.
Check the result and hand over
Repeat the check for threads running versus connected using the same scope and a representative interval. Check that the symptom is resolved, expected records are present and downstream results are correct. If coverage, correctness or latency worsens, restore the recorded configuration through the agreed rollback process.
Scope and precautions
Prefer read-only access and limit queries to the relevant period or dataset. This example has not been tested on your systems. Test changes in an approved environment. Keep credentials and sensitive data out of shared evidence.