如何在 MySQL 中显示所有的数据库

MySQL 是最流行的开源关系数据库管理系统。本教程介绍如何通过命令行显示 MySQL 或 MariaDB 服务器中的所有数据库。

显示 MySQL 数据库

获取 MySQL 数据库列表的最常用方法是使用 mysql 客户端连接到 MySQL 服务器并运行 SHOW DATABASES 命令。

使用以下命令访问 MySQL 服务器,并在出现提示时输入您的 MySQL 用户密码:

mysql -u user -p

如果您尚未为 MySQL 用户设置密码,则可以省略该 -p 开关。

在 MySQL shell 中执行以下命令:

SHOW DATABASES;

该命令将打印用户拥有权限的所有数据库的列表。输出将类似于:

+--------------------+ | Database | +--------------------+ | information_schema | | opencart | +--------------------+ 2 rows in set (0.00 sec)

SHOW SCHEMAS 是可用于列出数据库的另一个命令, 它是 SHOW DATABASES 命令的同义词:

SHOW SCHEMAS;

输出与使用 SHOW DATABASES 命令时的输出相同:

+--------------------+ | Database | +--------------------+ | information_schema | | opencart | +--------------------+ 2 rows in set (0.00 sec)

显示所有 MySQL 数据库

要列出 MySQL 服务器上的所有数据库,您需要以可以访问所有数据库的用户身份登录,默认情况下 root 用户是拥有查看所有数据库的权限。能够使用 SHOW DATABASES 列出所有的数据库。

使用 root 用户登录 MySQL:

mysql -u root -p

运行 SHOW DATABASES 命令:

SHOW DATABASES;

您将看到 MySQL 服务器上所有数据库的列表:

如何在 MySQL 中显示所有的数据库

+--------------------+ | Databases | +--------------------+ | information_schema | | database_name | | mysql | | opencart | | wordpress | | performance_schema | | sys | +--------------------+ 7 rows in set (0.00 sec)

过滤结果

如果根据根据特定模式过滤命令的输出,请在运行 SHOW DATABASES 的时候使用 LIKE 子句。

SHOW DATABASES LIKE pattern;

例如,以下语句将返回名称以 “open” 开头的所有数据库:

SHOW DATABASES LIKE 'open%';

+--------------------+ | Database | +--------------------+ | opencart | +--------------------+ 1 rows in set (0.00 sec)

百分号 (%) 表示零个,一个或多个字符。

如果要进行更复杂的搜索,可以从 information_schema 数据库中 schemata 表中根据条件查询。

以下语句将为您提供以 “open” 或 “word” 开头的所有数据库的列表:

SELECT schema_name FROM information_schema.schemata WHERE schema_name LIKE 'open%' OR schema_name LIKE 'word%';

+--------------------+ | Database | +--------------------+ | opencart | | wordpress | +--------------------+ 2 rows in set (0.00 sec)

从命令行显示 MySQL 数据库

要在不登录 MySQL shell 的情况下获取数据库列表,您可以使用 mysql 命令带有 -e 选项(代表 execute),也可以使用 mysqlshow 显示数据库和表信息的命令。

当您想使用 shell 脚本使用 MySQL 数据库时,这尤其有用。

在终端上运行以下命令以显示所有数据库的列表:

mysql -u user -p -e 'show databases;'

+--------------------+ | Database | +--------------------+ | information_schema | | opencart | +--------------------+

以下是使用该 mysqlshow 命令的示例:

mysqlshow -u user -p

输出将与上一个命令中的输出相同。

如果要过滤输出,可以使用 grep 命令。

结论

您已经学习了如何获取 MySQL 服务器中所有数据库的列表。

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/98092edd19aedb09ce802d54ebcd446a.html