MySQL 9.0 发行说明
您可以将 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