DBAtlas · Atlas d'exploitation des bases de données

Consulter l'utilisation des ressources du serveur depuis la DB (CPU/IO)

Oracle

SELECT stat_name, value FROM v$osstat
WHERE stat_name IN ('NUM_CPUS','BUSY_TIME','IDLE_TIME','IOWAIT_TIME','PHYSICAL_MEMORY_BYTES');
-- Real-time metrics: SELECT metric_name, value FROM v$sysmetric WHERE group_id = 2;

v$osstat donne les compteurs CPU/mémoire de l'OS ; v$sysmetric donne les métriques DB en temps réel (CPU, IOPS) du dernier intervalle.

PostgreSQL

SELECT backend_type, object, context, reads, writes, hits, evictions
FROM pg_stat_io
ORDER BY reads DESC;
-- Note: CPU usage is not visible from inside the DB; an OS tool (top, sar) is required.

pg_stat_io donne les compteurs de lecture/écriture/succès cache ; PostgreSQL n'expose pas l'utilisation CPU, les outils du système d'exploitation sont donc nécessaires.

MySQL

SELECT * FROM sys.host_summary;
-- For InnoDB I/O and thread details:
SHOW ENGINE INNODB STATUS\G

Les vues de synthèse du schéma sys (host_summary) donnent une ventilation IO/latence ; SHOW ENGINE INNODB STATUS affiche l'activité du buffer pool et des IO.

SQL Server

SELECT object_name, counter_name, cntr_value
FROM sys.dm_os_performance_counters
WHERE counter_name LIKE '%CPU%' OR counter_name LIKE '%Page life expectancy%';
-- CPU history: sys.dm_os_ring_buffers (RING_BUFFER_SCHEDULER_MONITOR)

sys.dm_os_performance_counters donne les compteurs de performance de la DB ; dm_os_ring_buffers donne la part CPU SQL/autres processus sur les ~256 dernières minutes.

MongoDB

db.serverStatus().metrics
// Relevant fields: .opcounters, .network, .wiredTiger.cache, .mem, .extra_info.page_faults

serverStatus() donne les métriques mémoire, réseau, opcounters et cache WiredTiger ; pour le détail CPU/IO de l'OS, utilisez mongostat ou les outils du système d'exploitation.

Redis

INFO cpu
INFO stats
# used_cpu_sys, used_cpu_user, instantaneous_ops_per_sec, total_net_input_bytes

INFO cpu indique la consommation CPU du processus Redis, et INFO stats les opérations par seconde et le trafic réseau.

Elasticsearch

GET _nodes/stats/os,process
// Look at the os.cpu.percent, os.mem, process.cpu.percent, fs (disk) fields

_nodes/stats/os,process donne le pourcentage CPU, la mémoire et les métriques de processus par nœud ; utilisez la section fs pour le disque.

Ouvrir dans DBAtlas →