docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_ROWS, DATA_LENGTH, INDEX_LENGTH FROM information_schema.TABLES WHERE TABLE_SCHEMA='ubains' ORDER BY TABLE_ROWS DESC LIMIT 20;"
# 当前活跃查询
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW PROCESSLIST;" | grep-v'Sleep' | head-20
# MySQL变量
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW VARIABLES LIKE 'max_connections';"
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW VARIABLES LIKE 'wait_timeout';"
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW VARIABLES LIKE 'interactive_timeout';"
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW VARIABLES LIKE 'innodb_buffer_pool_size';"
# Binlog状态
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW MASTER STATUS;"
# 复制状态
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW SLAVE STATUS\G"
# 事务状态
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW ENGINE INNODB STATUS\G" | grep-A5'TRANSACTIONS'
# 锁信息
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW ENGINE INNODB STATUS\G" | grep-A10'LOCK'
```
### 7.1 MySQL深度检测 (新增)
```bash
# QPS/TPS统计 (每秒查询数/事务数)
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW STATUS LIKE 'Queries';" 2>/dev/null
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW STATUS LIKE 'Com_select';" 2>/dev/null
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW STATUS LIKE 'Com_insert';" 2>/dev/null
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW STATUS LIKE 'Com_update';" 2>/dev/null
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW STATUS LIKE 'Com_delete';" 2>/dev/null
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SELECT TABLE_SCHEMA, TABLE_NAME, ENGINE, TABLE_ROWS, DATA_LENGTH/1024/1024 AS DATA_MB, INDEX_LENGTH/1024/1024 AS INDEX_MB, DATA_FREE/1024/1024 AS FRAG_MB FROM information_schema.TABLES WHERE TABLE_SCHEMA='ubains' AND DATA_FREE > 10485760 ORDER BY DATA_FREE DESC LIMIT 10;"
# 临时表使用率 (过多临时表 = 查询需优化)
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW STATUS LIKE 'Created_tmp%';"
# 连接错误统计
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW STATUS LIKE 'Connection_errors%';"
# 缓冲池命中率 (关注: <95% = 需增大缓冲池)
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW STATUS LIKE 'Innodb_buffer_pool_read%';"
# Binlog大小和过期时间
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW VARIABLES LIKE 'expire_logs_days';" 2>/dev/null
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW VARIABLES LIKE 'binlog_expire_logs_seconds';" 2>/dev/null
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SHOW BINARY LOGS;" 2>/dev/null | tail-5
# 数据库总大小
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SELECT table_schema AS 'Database', ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS 'Size(MB)' FROM information_schema.tables GROUP BY table_schema;"
# 缺少索引的高耗时查询 (通过performance_schema)
docker exec umysql mysql -uroot-p"$MYSQL_PASSWORD"-e"SELECT DIGEST_TEXT, COUNT_STAR, AVG_TIMER_WAIT/1000000000 AS AVG_MS FROM performance_schema.events_statements_summary_by_digest ORDER BY AVG_TIMER_WAIT DESC LIMIT 10;" 2>/dev/null
```
## 步骤8: Redis缓存检测
```bash
# 基本信息
docker exec uredis redis-cli -a"$REDIS_PASSWORD" INFO 2>/dev/null | grep-E'redis_version|uptime_in_days|connected_clients|blocked_clients'
# 内存使用
docker exec uredis redis-cli -a"$REDIS_PASSWORD" INFO memory 2>/dev/null | grep-E'used_memory_human|used_memory_peak_human|mem_fragmentation_ratio|evicted_keys|maxmemory|maxmemory_human|maxmemory_policy'