Script will list all running processes, you can choose what columns you want to use or not. SELECT pps.thread_id AS thd_id, pps.processlist_id AS conn_id, IF(pps.name = 'thread/sql/one_connection', CONCAT(pps.processlist_user, '@', pps.processlist_host), REPLACE(pps.name, 'thread/', '')) user, pps.processlist_db AS db, pps.processlist_command AS command, pps.processlist_state AS state, pps.processlist_time AS time, sys.format_statement(pps.processlist_info) AS current_statement, sys.format_time(esc.lock_time) AS lock_latency, esc.rows_examined, esc.rows_sent, esc.rows_affected, esc.created_tmp_tables AS tmp_tables, esc.created_tmp_disk_tables AS tmp_disk_tables, IF(esc.no_good_index_used > 0 OR esc.no_index_used > 0, 'YES', 'NO') AS full_scan, IF(esc.timer_wait IS NOT NULL, sys.format_statement(esc.sql_text), NULL) AS last_statement, IF(esc.timer_wait IS NOT NULL, sys.format_time(esc.timer_wait), NULL) as last_statement_latency, ewc.event_name AS last_wait, IF(ewc.timer_wait IS NULL AND ewc.event_name IS NOT NULL, 'Still Waiting', sys.format_time(ewc.timer_wait)) last_wait_latency, ewc.source FROM performance_schema.threads AS pps LEFT JOIN performance_schema.events_waits_current AS ewc USING (thread_id) LEFT JOIN performance_schema.events_statements_current as esc USING (thread_id) GROUP BY thread_id ORDER BY pps.processlist_time DESC, last_wait_latency DESC;
SELECT pps.thread_id AS thd_id, pps.processlist_id AS conn_id, IF(pps.name = 'thread/sql/one_connection', CONCAT(pps.processlist_user, '@', pps.processlist_host), REPLACE(pps.name, 'thread/', '')) user, pps.processlist_db AS db, pps.processlist_command AS command, pps.processlist_state AS state, pps.processlist_time AS time, sys.format_statement(pps.processlist_info) AS current_statement, sys.format_time(esc.lock_time) AS lock_latency, esc.rows_examined, esc.rows_sent, esc.rows_affected, esc.created_tmp_tables AS tmp_tables, esc.created_tmp_disk_tables AS tmp_disk_tables, IF(esc.no_good_index_used > 0 OR esc.no_index_used > 0, 'YES', 'NO') AS full_scan, IF(esc.timer_wait IS NOT NULL, sys.format_statement(esc.sql_text), NULL) AS last_statement, IF(esc.timer_wait IS NOT NULL, sys.format_time(esc.timer_wait), NULL) as last_statement_latency, ewc.event_name AS last_wait, IF(ewc.timer_wait IS NULL AND ewc.event_name IS NOT NULL, 'Still Waiting', sys.format_time(ewc.timer_wait)) last_wait_latency, ewc.source FROM performance_schema.threads AS pps LEFT JOIN performance_schema.events_waits_current AS ewc USING (thread_id) LEFT JOIN performance_schema.events_statements_current as esc USING (thread_id) GROUP BY thread_id ORDER BY pps.processlist_time DESC, last_wait_latency DESC;