Information_schema 是 MySQL 数据库中的一个特殊数据库,包含了所有数据库、表、列等的元数据信息。你可以使用 information_schema 来监控数据库的各种信息,比如表的大小、索引的大小、查询的性能等。
以下是一些使用 information_schema 监控数据库的常见方法:
SELECT table_schema AS `Database`,
ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS `Size (MB)`
FROM information_schema.TABLES
GROUP BY table_schema;
SELECT table_name AS `Table`,
ROUND(((data_length + index_length) / 1024 / 1024), 2) AS `Size (MB)`
FROM information_schema.TABLES
WHERE table_schema = 'your_database_name';
SELECT table_name AS `Table`,
index_name AS `Index`,
ROUND(((index_length) / 1024 / 1024), 2) AS `Size (MB)`
FROM information_schema.INDEXES
WHERE table_schema = 'your_database_name';
SELECT *
FROM information_schema.SLOW_LOG
WHERE sql_text LIKE '%your_query%';
这些是一些使用 information_schema 监控数据库的常见方法,你可以根据自己的实际需求进行调整和扩展。同时,需要注意的是,查询 information_schema 可能会对数据库的性能产生影响,因此在使用过程中需要谨慎操作。