MySQL 8.3 Release Notes
SHOW {DATABASES | SCHEMAS}
[LIKE 'pattern' | WHERE expr]
显示 DATABASES
列出 MySQL 服务器主机上的数据库。显示 SCHEMAS
是 显示 DATABASES
的同义词。如果存在 LIKE
子句,表示要匹配的数据库名称。可以使用 WHERE
子句来选择使用更一般条件的行,如 第 28.8 节,“SHOW 语句扩展” 中所讨论的那样。
您只能看到您拥有某种权限的数据库,除非您拥有全局 显示 DATABASES
权限。您也可以使用 mysqlshow 命令来获取该列表。
如果服务器以 --skip-show-database
选项启动,您不能使用该语句,除非您拥有 显示 DATABASES
权限。
MySQL 将数据库实现为数据目录中的目录,因此该语句只是列出了该位置的目录。然而,输出可能包括不对应实际数据库的目录名称。
数据库信息也可以从 INFORMATION_SCHEMA
SCHEMATA
表中获取。请参阅 第 28.3.31 节,“INFORMATION_SCHEMA SCHEMATA 表”。
Caution
因为任何静态全局权限都被认为是所有数据库的权限,因此任何静态全局权限都使用户可以使用 显示 DATABASES
或检查 INFORMATION_SCHEMA
的 SCHEMATA
表来查看所有数据库名称,除非数据库在数据库级别受到部分撤销的限制。