您可以將 sys
schema 設定為預設 schema,這樣對其物件的參考就不需要使用 schema 名稱限定。
mysql> USE sys;
Database changed
mysql> SELECT * FROM version;
+-------------+---------------+
| sys_version | mysql_version |
+-------------+---------------+
| 2.1.1 | 8.4.0-tr |
+-------------+---------------+
(version
檢視表會顯示 sys
schema 和 MySQL 伺服器版本。)
要在使用不同 schema 作為預設 schema 時存取 sys
schema 物件(或只是為了明確起見),請使用 schema 名稱限定物件參考。
mysql> SELECT * FROM sys.version;
+-------------+---------------+
| sys_version | mysql_version |
+-------------+---------------+
| 2.1.1 | 8.4.0-tr |
+-------------+---------------+
sys
schema 包含許多以各種方式總結 Performance Schema 資料表的檢視表。這些檢視表大多成對出現,其中一對的其中一個成員的名稱與另一個成員的名稱相同,外加 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 Schema 檢視表」。
要檢查 sys
schema 物件定義,請使用適當的 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
schema。要產生傾印檔案,請使用下列任一命令在命令列上明確命名 sys
schema:
mysqldump --databases --routines sys > sys_dump.sql
要從傾印檔案重新安裝 schema,請使用以下命令:
mysql < sys_dump.sql