文档主页
MySQL 8.4 参考手册
相关文档 下载本手册
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
手册页 (TGZ) - 258.5Kb
手册页 (Zip) - 365.5Kb
信息 (Gzip) - 4.0Mb
信息 (Zip) - 4.0Mb


MySQL 8.4 参考手册  /  MySQL sys 模式  /  使用 sys 模式

30.2 使用 sys 模式

您可以将 sys 模式设为默认模式,这样对它的对象的引用就不需要使用模式名称进行限定

mysql> USE sys;
Database changed
mysql> SELECT * FROM version;
+-------------+---------------+
| sys_version | mysql_version |
+-------------+---------------+
| 2.1.1       | 8.4.0-tr      |
+-------------+---------------+

version 视图显示了 sys 模式和 MySQL 服务器版本。)

要在其他模式为默认模式时访问 sys 模式对象(或者只是为了明确起见),请使用模式名称限定对象引用

mysql> SELECT * FROM sys.version;
+-------------+---------------+
| sys_version | mysql_version |
+-------------+---------------+
| 2.1.1       | 8.4.0-tr      |
+-------------+---------------+

sys 模式包含许多以各种方式汇总性能模式表的视图。这些视图大多成对出现,其中一对中的一个成员与另一个成员同名,只是加了一个 x$ 前缀。例如,host_summary_by_file_io 视图汇总了按主机分组的文件 I/O,并显示了从皮秒转换为更易读的值(带单位)的延迟;

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$ 视图之间区别的更多信息,请参阅第 30.4.3 节“sys 模式视图”

要检查 sys 模式对象的定义,请使用相应的 SHOW 语句或 INFORMATION_SCHEMA 查询。例如,要检查 session 视图和 format_bytes() 函数的定义,请使用以下语句

mysql> SHOW CREATE VIEW sys.session;
mysql> SHOW CREATE FUNCTION sys.format_bytes;

但是,这些语句以相对未格式化的形式显示定义。要以更易读的格式查看对象定义,请访问 MySQL 源代码发行版中 scripts/sys_schema 目录下的各个 .sql 文件。

mysqldump 默认情况下不会转储 sys 模式。要生成转储文件,请使用以下任一命令在命令行上显式命名 sys 模式

mysqldump --databases --routines sys > sys_dump.sql

要从转储文件中重新安装模式,请使用以下命令

mysql < sys_dump.sql