MySQL SHOW DATABASES:列出MySQL中的所有数据库
时间:2019-11-20 08:52:35 来源:igfitidea点击:
简介:在本教程中,您将学习如何使用MySQL SHOW DATABASES命令列出MySQL数据库服务器中的所有数据库。
使用MySQL SHOW数据库
要列出MySQL服务器主机上的所有数据库,请使用SHOW DATABASES命令,如下所示:
SHOW DATABASES;
例如,要列出本地MySQL数据库服务器中的所有数据库,请首先登录数据库服务器,如下所示:
>mysql -u root -p Enter password: ********** mysql>
然后使用SHOW DATABASES命令:
mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | classicmodels | | information_schema | | mysql | | performance_schema | | sys | | test | +--------------------+ 6 rows in set (0.00 sec)
SHOW SCHEMAS命令是SHOW DATABASES的同义词,因此以下命令返回与上述结果相同的结果:
SHOW SCHEMAS;
如果要查询与特定模式匹配的数据库,请使用LIKE子句,如下所示:
SHOW DATABASES LIKE pattern;
例如,以下语句返回以字符串" schema"结尾的数据库;
SHOW DATABASES LIKE '%schema'; +--------------------+ | Database (%schema) | +--------------------+ | information_schema | | performance_schema | +--------------------+ 2 rows in set (0.00 sec)
重要的是要注意,如果MySQL数据库服务器以--skip-show-database开头,则除非您具有SHOW DATABASES特权,否则不能使用SHOW DATABASES语句。
从information_schema查询数据库数据
如果LIKE子句中的条件不足,则可以直接从information_schema数据库中的模式表查询数据库信息。
例如,以下查询返回与SHOW DATABASES命令相同的结果。
SELECT schema_name FROM information_schema.schemata;
以下SELECT语句返回名称以" schema"或" s"结尾的数据库。
SELECT schema_name FROM information_schema.schemata WHERE schema_name LIKE '%schema' OR schema_name LIKE '%s';
它返回以下结果集:
+--------------------+ | SCHEMA_NAME | +--------------------+ | information_schema | | performance_schema | | sys | | classicmodels | +--------------------+ 4 rows in set (0.00 sec)
在本教程中,您学习了如何使用SHOW DATABASES命令显示MySQL服务器中的所有数据库或如何从information_schema数据库中的模式表查询。