26.2 Использование схемы sys
Вы можете сделать схему sys по умолчанию, чтобы ссылки на её объекты не требовали указания имени схемы:
mysql> USE sys;
Database changed
mysql> SELECT * FROM version;
+-------------+------------------+
| sys_version | mysql_version |
+-------------+------------------+
| 1.5.1 | 5.7.24-debug-log |
+-------------+------------------+
(Представление version показывает схему sys и версии сервера MySQL.)
Для доступа к объектам схемы sys, когда используется другая схема по умолчанию (или просто для явного указания), используйте полные имена объектов, включая имя схемы:
mysql> SELECT * FROM sys.version;
+-------------+------------------+
| sys_version | mysql_version |
+-------------+------------------+
| 1.5.1 | 5.7.24-debug-log |
+-------------+------------------+
Схема sys содержит множество представлений, которые обобщают таблицы Performance Schema различными способами. Большинство этих представлений представлены парами, где одно имя совпадает с другим, но дополнено префиксом x$. Например, представление host_summary_by_file_io суммирует ввод-вывод файлов, сгруппированные по хосту, и отображает задержки, преобразованные из пикосекунд в более читаемые значения (с единицами измерения);
mysql> SELECT * FROM sys.host_summary_by_file_io;
+------------+-------+------------+
| host | ios | io_latency |
+------------+-------+------------+
| localhost | 67570 | 5.38 s |
| background | 3468 | 4.18 s |
+------------+-------+------------+
Представление x$host_summary_by_file_io обобщает те же данные, но отображает неформатированные задержки в пикосекундах:
mysql> SELECT * FROM sys.x$host_summary_by_file_io;
+------------+-------+---------------+
| host | ios | io_latency |
+------------+-------+---------------+
| localhost | 67574 | 5380678125144 |
| background | 3474 | 4758696829416 |
+------------+-------+---------------+
Представление без префикса x$ предназначено для удобного вывода данных для чтения человеком. Представление с префиксом x$, отображающее те же значения в сыром виде, предназначено для использования с другими инструментами, которые выполняют собственную обработку данных. Для получения дополнительной информации о различиях между представлениями без префикса x$ и с префиксом x$ см. Раздел 26.4.3, «Представления схемы sys».
Для просмотра определений объектов схемы sys, используйте соответствующее утверждение SHOW или запрос INFORMATION_SCHEMA. Например, чтобы просмотреть определения представления session и функции format_bytes(), используйте следующие утверждения:
mysql> SHOW CREATE VIEW sys.session;
mysql> SHOW CREATE FUNCTION sys.format_bytes;
Однако эти утверждения отображают определения в неформатированном виде. Чтобы просмотреть определения объектов с более читаемым форматированием, обратитесь к отдельным файлам .sql, которые находятся в папке scripts/sys_schema в дистрибутивах исходного кода MySQL. До MySQL 5.7.28 исходные коды хранились в отдельном дистрибутиве, доступном на веб-сайте разработки схемы sys по адресу https://github.com/mysql/mysql-sys.
Ни mysqldump, ни mysqlpump по умолчанию не создают дамп схемы sys. Для создания файла дампа явно укажите схему sys в командной строке, используя одну из этих команд:
mysqldump --databases --routines sys > sys_dump.sql
mysqlpump sys > sys_dump.sql
Для переустановки схемы из файла дампа используйте следующую команду:
mysql < sys_dump.sql
© 2025 Oracle
Licensed under the GPLv2 License.