MySQL的sys數(shù)據(jù)庫是MySQL 5.7中引入的系統(tǒng)管理功能,它增強(qiáng)了MySQL的管理能力,提供更多的系統(tǒng)級別的信息,以便于管理員進(jìn)行管理和優(yōu)化。
sys數(shù)據(jù)庫包括幾個庫:sys、sysaux和performance_schema,其中sys庫是最重要的。sys庫根據(jù)內(nèi)部的視圖,提供有關(guān)MySQL數(shù)據(jù)庫的所有信息。這些視圖不同于常規(guī)MySQL用戶定義的視圖,因為它們在MySQL內(nèi)核中完全集成,并基于內(nèi)部表格而不是基于其他表格。
可以通過如下命令打開MySQL的sys數(shù)據(jù)庫:
USE sys;
sys數(shù)據(jù)庫中有很多有用的視圖,例如:
SELECT * FROM sys.memory_global_by_current_bytes;
這個命令可以檢查當(dāng)前MySQL服務(wù)器上已使用的全局內(nèi)存量。它顯示了一個帶有不同顏色的內(nèi)存圖,表示當(dāng)前已分配的內(nèi)存情況。
另一個有用的視圖是:sys.innodb_tablespaces_encryption。這個視圖用于檢查使用了加密表空間的InnoDB表的數(shù)量:
SELECT COUNT(*) as encryption_tablespaces FROM sys.innodb_tablespaces_encryption;
除了這些視圖,sys數(shù)據(jù)庫還提供了各種查詢和函數(shù),以便于管理員進(jìn)行管理和維護(hù)。例如:
SELECT SYS_CONTEXT('userenv', 'hostname') as db_hostname;
這個命令可以檢查當(dāng)前MySQL服務(wù)器的主機(jī)名。
總之,sys數(shù)據(jù)庫是MySQL 5.7中引入的很有用的系統(tǒng)管理庫。它提供了大量有關(guān)MySQL服務(wù)器的信息,以幫助管理員進(jìn)行優(yōu)化和維護(hù)。