-- Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved. -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; version 2 of the License. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software -- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA DROP PROCEDURE IF EXISTS ps_setup_show_enabled; DELIMITER $$ CREATE DEFINER='mariadb.sys'@'localhost' PROCEDURE ps_setup_show_enabled ( IN in_show_instruments BOOLEAN, IN in_show_threads BOOLEAN ) COMMENT ' Description ----------- Shows all currently enabled Performance Schema configuration. Parameters ----------- in_show_instruments (BOOLEAN): Whether to print enabled instruments (can print many items) in_show_threads (BOOLEAN): Whether to print enabled threads Example ----------- mysql> CALL sys.ps_setup_show_enabled(TRUE, TRUE); +----------------------------+ | performance_schema_enabled | +----------------------------+ | 1 | +----------------------------+ 1 row in set (0.00 sec) +---------------+ | enabled_users | +---------------+ | \'%\'@\'%\' | +---------------+ 1 row in set (0.01 sec) +-------------+---------+---------+-------+ | object_type | objects | enabled | timed | +-------------+---------+---------+-------+ | EVENT | %.% | YES | YES | | FUNCTION | %.% | YES | YES | | PROCEDURE | %.% | YES | YES | | TABLE | %.% | YES | YES | | TRIGGER | %.% | YES | YES | +-------------+---------+---------+-------+ 5 rows in set (0.01 sec) +---------------------------+ | enabled_consumers | +---------------------------+ | events_statements_current | | global_instrumentation | | thread_instrumentation | | statements_digest | +---------------------------+ 4 rows in set (0.05 sec) +---------------------------------+-------------+ | enabled_threads | thread_type | +---------------------------------+-------------+ | sql/main | BACKGROUND | | sql/thread_timer_notifier | BACKGROUND | | innodb/io_ibuf_thread | BACKGROUND | | innodb/io_log_thread | BACKGROUND | | innodb/io_read_thread | BACKGROUND | | innodb/io_read_thread | BACKGROUND | | innodb/io_write_thread | BACKGROUND | | innodb/io_write_thread | BACKGROUND | | innodb/page_cleaner_thread | BACKGROUND | | innodb/srv_lock_timeout_thread | BACKGROUND | | innodb/srv_error_monitor_thread | BACKGROUND | | innodb/srv_monitor_thread | BACKGROUND | | innodb/srv_master_thread | BACKGROUND | | innodb/srv_purge_thread | BACKGROUND | | innodb/srv_worker_thread | BACKGROUND | | innodb/srv_worker_thread | BACKGROUND | | innodb/srv_worker_thread | BACKGROUND | | innodb/buf_dump_thread | BACKGROUND | | innodb/dict_stats_thread | BACKGROUND | | sql/signal_handler | BACKGROUND | | sql/compress_gtid_table | FOREGROUND | | root@localhost | FOREGROUND | +---------------------------------+-------------+ 22 rows in set (0.01 sec) +-------------------------------------+-------+ | enabled_instruments | timed | +-------------------------------------+-------+ | wait/io/file/sql/map | YES | | wait/io/file/sql/binlog | YES | ... | statement/com/Error | YES | | statement/com/ | YES | | idle | YES | +-------------------------------------+-------+ 210 rows in set (0.08 sec) Query OK, 0 rows affected (0.89 sec) ' SQL SECURITY INVOKER DETERMINISTIC READS SQL DATA BEGIN SELECT @@performance_schema AS performance_schema_enabled; -- In 5.7.6 and later the setup_actors table has an ENABLED column to -- specify whether the actor is enabled. Before that all actors matched -- in the setup_actors table were enabled. SELECT CONCAT('\'', user, '\'@\'', host, '\'') AS enabled_users FROM performance_schema.setup_actors WHERE enabled = 'YES' ORDER BY enabled_users; SELECT object_type, CONCAT(object_schema, '.', object_name) AS objects, enabled, timed FROM performance_schema.setup_objects WHERE enabled = 'YES' ORDER BY object_type, objects; SELECT name AS enabled_consumers FROM performance_schema.setup_consumers WHERE enabled = 'YES' ORDER BY enabled_consumers; IF (in_show_threads) THEN SELECT IF(name = 'thread/sql/one_connection', CONCAT(processlist_user, '@', processlist_host), REPLACE(name, 'thread/', '')) AS enabled_threads, TYPE AS thread_type FROM performance_schema.threads WHERE INSTRUMENTED = 'YES' AND name <> 'thread/innodb/thread_pool_thread' ORDER BY enabled_threads; END IF; IF (in_show_instruments) THEN SELECT name AS enabled_instruments, timed FROM performance_schema.setup_instruments WHERE enabled = 'YES' ORDER BY enabled_instruments; END IF; END$$ DELIMITER ;