Documentation Home

25.12.2.4 setup_objects 表

setup_objects表控制性能模式是否监视特定对象。默认情况下,此表的最大大小为 100 行。要更改表大小,请 performance_schema_setup_objects_size 在服务器启动时修改系统变量。

初始setup_objects 内容如下所示:

mysql> SELECT * FROM performance_schema.setup_objects;
+-------------+--------------------+-------------+---------+-------+
| OBJECT_TYPE | OBJECT_SCHEMA      | OBJECT_NAME | ENABLED | TIMED |
+-------------+--------------------+-------------+---------+-------+
| EVENT       | mysql              | %           | NO      | NO    |
| EVENT       | performance_schema | %           | NO      | NO    |
| EVENT       | information_schema | %           | NO      | NO    |
| EVENT       | %                  | %           | YES     | YES   |
| FUNCTION    | mysql              | %           | NO      | NO    |
| FUNCTION    | performance_schema | %           | NO      | NO    |
| FUNCTION    | information_schema | %           | NO      | NO    |
| FUNCTION    | %                  | %           | YES     | YES   |
| PROCEDURE   | mysql              | %           | NO      | NO    |
| PROCEDURE   | performance_schema | %           | NO      | NO    |
| PROCEDURE   | information_schema | %           | NO      | NO    |
| PROCEDURE   | %                  | %           | YES     | YES   |
| TABLE       | mysql              | %           | NO      | NO    |
| TABLE       | performance_schema | %           | NO      | NO    |
| TABLE       | information_schema | %           | NO      | NO    |
| TABLE       | %                  | %           | YES     | YES   |
| TRIGGER     | mysql              | %           | NO      | NO    |
| TRIGGER     | performance_schema | %           | NO      | NO    |
| TRIGGER     | information_schema | %           | NO      | NO    |
| TRIGGER     | %                  | %           | YES     | YES   |
+-------------+--------------------+-------------+---------+-------+

对表的修改 setup_objects会立即影响对象监控。

对于中列出的对象类型 setup_objects,性能模式使用表来说明如何监视它们。对象匹配基于OBJECT_SCHEMAOBJECT_NAME列。不监视不匹配的对象。

默认对象配置的效果是检测除 、 和 数据库中的 mysql所有 INFORMATION_SCHEMAperformance_schema。(INFORMATION_SCHEMA无论 的内容如何,​​都不会检测数据库中的 表setup_objects;该行 information_schema.%只是明确显示了此默认值。)

当 Performance Schema 检查中的匹配项时 setup_objects,它会首先尝试找到更具体的匹配项。例如,对于一个表 db1.t1,它先查找 and 的匹配项 'db1''t1'然后查找 'db1'and的匹配项,'%'然后 查找'%'and的匹配项'%'。匹配发生的顺序很重要,因为不同的匹配 setup_objects行可以有不同ENABLEDTIMED值。

对表具有或 权限setup_objects的用户 可以插入或删除行 。对于现有的行,具有表权限 的用户只能修改和 列。INSERTDELETEENABLEDTIMEDUPDATE

有关 setup_objects表在事件过滤中的作用的更多信息,请参阅 第 25.4.3 节,“事件预过滤”

setup_objects表有以下列:

  • OBJECT_TYPE

    要检测的对象的类型。该值是 'EVENT'(Event Scheduler event)、 'FUNCTION'(stored function)、 'PROCEDURE'(stored procedure)、 'TABLE'(base table) 或 'TRIGGER'(trigger) 之一。

    TABLE过滤会影响表 I/O 事件 ( wait/io/table/sql/handler instrument) 和表锁定事件 ( wait/lock/table/sql/handler instrument)。

  • OBJECT_SCHEMA

    包含对象的架构。这应该是一个字面名称,或者'%'表示任何模式。

  • OBJECT_NAME

    检测对象的名称。这应该是一个字面名称,或者'%'表示任何对象。

  • ENABLED

    是否检测对象的事件。值为YESNO。此列可以修改。

  • TIMED

    对象的事件是否定时。值为 YESNO。此列可以修改。

TRUNCATE TABLE表是允许的setup_objects。它删除行。