ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
数据库可以看作是一个专门存储数据对象的容器,每一个数据库都有唯一的名称,并且数据库的名称都是有实际意义的,这样就可以清晰的看出每个数据库用来存放什么数据。在MySQL数据库中存在系统数据库和自定义数据库,系统数据库是在安装 MySQL 后系统自带的数据库,自定义数据库是由用户定义创建的数据库。 在 MySQL 中,可使用**SHOW DATABASES**语句来查看或显示当前用户权限范围以内的数据库。查看数据库的语法格式为: ~~~ SHOW DATABASES [LIKE '数据库名']; ~~~ 语法说明如下: * LIKE 从句是可选项,用于匹配指定的数据库名称。LIKE 从句可以部分匹配,也可以完全匹配。 * 数据库名由单引号`' '`包围。 #### 实例1:查看所有数据库 列出当前用户可查看的所有数据库: ~~~ mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sakila | | sys | | world | +--------------------+ 6 row in set (0.22 sec) ~~~ 可以发现,在上面的列表中有 6 个数据库,它们都是安装 MySQL 时系统自动创建的,其各自功能如下: * information\_schema:主要存储了系统中的一些数据库对象信息,比如用户表信息、列信息、权限信息、字符集信息和分区信息等。 * mysql:MySQL 的核心数据库,类似于 SQL Server 中的 master 表,主要负责存储数据库用户、用户访问权限等 MySQL 自己需要使用的控制和管理信息。常用的比如在 mysql 数据库的 user 表中修改 root 用户密码。 * performance\_schema:主要用于收集数据库服务器性能参数。 * sakila:MySQL 提供的样例数据库,该数据库共有 16 张表,这些数据表都是比较常见的,在设计数据库时,可以参照这些样例数据表来快速完成所需的数据表。 * sys:MySQL 5.7 安装完成后会多一个 sys 数据库。sys 数据库主要提供了一些视图,数据都来自于 performation\_schema,主要是让开发者和使用者更方便地查看性能问题。 * world:world 数据库是 MySQL 自动创建的数据库,该数据库中只包括 3 张数据表,分别保存城市,国家和国家使用的语言等内容。 #### 实例2:创建并查看数据库 先创建一个名为 test\_db 的数据库: mysql> CREATE DATABASE test\_db; Query OK, 1 row affected (0.12 sec) 再使用 SHOW DATABASES 语句显示权限范围内的所有数据库名,如下所示: ~~~ mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sakila | | sys | | test_db | | world | +--------------------+ 7 row in set (0.22 sec) ~~~ 你看,刚才创建的数据库已经被显示出来了。 #### 实例3:使用 LIKE 从句 先创建三个数据库,名字分别为 test\_db、db\_test、db\_test\_db。 1) 使用 LIKE 从句,查看与 test\_db 完全匹配的数据库: ~~~ mysql> SHOW DATABASES LIKE 'test_db'; +--------------------+ | Database (test_db) | +--------------------+ | test_db | +--------------------+ 1 row in set (0.03 sec) ~~~ 2) 使用 LIKE 从句,查看名字中包含 test 的数据库: ~~~ mysql> SHOW DATABASES LIKE '%test%'; +--------------------+ | Database (%test%) | +--------------------+ | db_test | +--------------------+ | db_test_db | +--------------------+ | test_db | +--------------------+ 3 row in set (0.03 sec) ~~~ 3) 使用 LIKE 从句,查看名字以 db 开头的数据库: ~~~ mysql> SHOW DATABASES LIKE 'db%'; +----------------+ | Database (db%) | +----------------+ | db_test | +----------------+ | db_test_db | +----------------+ 2 row in set (0.03 sec) ~~~ 4) 使用 LIKE 从句,查看名字以 db 结尾的数据库: ~~~ mysql> SHOW DATABASES LIKE '%db'; +----------------+ | Database (%db) | +----------------+ | db_test_db | +----------------+ | test_db | +----------------+ 2 row in set (0.03 sec) ~~~