WithCoderWithCoderWithCoder

MySQL列举数据库(SHOW DATABASES语句)

    数据库是一个专门存储数据对象的容器,每一个数据库都有唯一的名称,并且数据库的名称都是有实际意义的,这样就可以清晰的看出每个数据库用来存放什么数据。在 MySQL 数据库中存在系统数据库和自定义数据库,系统数据库是在安装 MySQL 后系统自带的数据库,自定义数据库是由用户定义创建的数据库。

    在 MySQL 中,可使用 SHOW DATABASES 语句来列举当前用户权限范围以内的数据库。SHOW DATABASES的语法格式为:

SHOW {DATABASES | SCHEMAS} [LIKE 'pattern']

    语法说明如下:

    • SHOW 后面可以是DATABASES或SCHEMAS;

    • LIKE 从句是可选项,用于模糊匹配指定的数据库名称。LIKE 从句可以部分匹配,也可以完全匹配。

    实例1:查看本机所有数据库

    列出当前用户可查看的所有数据库:

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| sys                |
+--------------------+
5 row in set (0.00 sec)

    可以发现,上面的查询出来有 5 个数据库,除了test之外,剩余的 4 个数据库是安装 MySQL 时系统自动创建的,其各自功能如下:

    • information_schema:主要存储了系统中的一些数据库对象信息,比如用户表信息、列信息、权限信息、字符集信息和分区信息等。

    • mysql:MySQL 的核心数据库,类似于 SQL Server 中的 master 表,主要负责存储数据库用户、用户访问权限等 MySQL 自己需要使用的控制和管理信息。常用的比如在 mysql 数据库的 user 表中修改 root 用户密码。

    • performance_schema:主要用于收集数据库服务器性能参数。

    • sys:MySQL 5.7 安装完成后会多一个 sys 数据库。sys 数据库主要提供了一些视图,数据都来自于 performation_schema,主要是让开发者和使用者更方便地查看性能问题。 

    实例2:使用 LIKE 从句模糊匹配查询

    模糊匹配,可以使用字符 % 进行匹配。查询包含“schema”的数据库:

mysql> SHOW DATABASES LIKE '%schema%';
+---------------------+
| Database (%schema%) |
+---------------------+
| information_schema  |
| performance_schema  |
+---------------------+
2 rows in set (0.00 sec


欢迎分享交流,转载请注明出处:WithCoder » MySQL列举数据库(SHOW DATABASES语句)