Spec-Zone .ru
спецификации, руководства, описания, API
|
The setup_objects
table controls
whether particular objects are monitored. This table has a maximum size of 100 rows by default. The size may be
changed by modifying the performance_schema_setup_objects_size
system variable at server startup.
The initial setup_objects
contents
look like this:
mysql> SELECT * FROM setup_objects;
+-------------+--------------------+-------------+---------+-------+| OBJECT_TYPE | OBJECT_SCHEMA | OBJECT_NAME | ENABLED | TIMED |+-------------+--------------------+-------------+---------+-------+| TABLE | mysql | % | NO | NO || TABLE | performance_schema | % | NO | NO || TABLE | information_schema | % | NO | NO || TABLE | % | % | YES | YES |+-------------+--------------------+-------------+---------+-------+
For object types listed in setup_objects
, the Performance Schema uses the table to how to monitor them.
Object matching is based on the OBJECT_SCHEMA
and OBJECT_NAME
columns. Objects for which there is no match are not monitored.
When the Performance Schema checks for a match in setup_objects
, it tries to find more specific matches first. For example, with a
table db1.t1
, it looks for a match for 'db1'
and 't1'
, then for 'db1'
and '%'
, then for '%'
and '%'
. The order in which matching occurs matters because different setup_objects
rows can have different ENABLED
and TIMED
values.
The effect of the default object configuration is to instrument all tables except those in the mysql
, INFORMATION_SCHEMA
, and performance_schema
databases. Tables in the INFORMATION_SCHEMA
database are not instrumented
regardless of the contents of setup_objects
; the row for information_schema.%
simply makes this default explicit.
The setup_objects
table has these
columns:
OBJECT_TYPE
The type of object to instrument. Currently, this is always 'TABLE'
(base table).
OBJECT_SCHEMA
The schema that contains the object. This should be a literal name, or '%'
to mean "any schema."
OBJECT_NAME
The name of the instrumented object. This should be a literal name, or '%'
to mean "any object."
ENABLED
Whether events for the object are instrumented. This column can be modified.
This column was added in MySQL 5.6.3. For earlier versions in which it is not present, the Performance Schema enables monitoring only for objects matched by some row in the table; monitoring is implicitly disabled for nonmatching objects.
TIMED
Whether events for the object are timed. This column can be modified.
Rows can be inserted into or deleted from setup_objects
by users with the INSERT
or DELETE
privilege on the
table. For existing rows, only the ENABLED
and TIMED
columns can be modified, by users with the UPDATE
privilege on the table.
Modifications to the setup_objects
table affect object monitoring immediately.
For more information about the role of the setup_objects
table in event filtering, see Section 21.2.3.2.1, "Event
Pre-Filtering".