管理时MySQL对于数据库服务器,您将执行的最常见的任务之一就是熟悉环境。这包括列出数据库驻留在服务器上,显示数据库表,或获取有关的信息用户帐户及其权限
.
本文介绍如何通过命令行列出 MySQL 或 MariaDB 数据库中的表。
显示 MySQL 表#
要获取 MySQL 数据库中的表列表,请使用mysql
客户端工具连接到MySQL服务器并运行SHOW TABLES
命令。
访问MySQL服务器:
mysql -u user -p
从 MySQL shell 中,使用以下命令切换到数据库USE
陈述:
USE database_name;
执行以下命令获取当前数据库中所有表和视图的列表:
SHOW TABLES;
输出将如下所示:
+----------------------------+
| Tables_in_database_name |
+----------------------------+
| actions |
| permissions |
| permissions_roles |
| permissions_users |
| roles |
| roles_users |
| settings |
| users |
+----------------------------+
8 rows in set (0.00 sec)
可选的FULL
修饰符会将表类型显示为第二个输出列。
SHOW FULL TABLES;
输出将如下所示:
+----------------------------+------------+
| Tables_in_database_name | Table_type |
+----------------------------+------------+
| actions | VIEW |
| permissions | BASE TABLE |
| permissions_roles | BASE TABLE |
| permissions_users | BASE TABLE |
| roles | BASE TABLE |
| roles_users | BASE TABLE |
| settings | BASE TABLE |
| users | BASE TABLE |
+----------------------------+------------+
8 rows in set (0.00 sec)
要获取表的列表而不切换到数据库,请使用FROM
or IN
子句后跟数据库名称:
SHOW TABLES FROM database_name;
The LIKE
子句可用于过滤输出SHOW TABLES
根据特定模式发出命令。
SHOW TABLES LIKE pattern;
例如,以下语句将返回名称以“open”开头的所有数据库:
SHOW TABLES LIKE 'permissions%';
+-------------------------------------------+
| Tables_in_database_name (permissions%) |
+-------------------------------------------+
| permissions |
| permissions_roles |
| permissions_users |
+-------------------------------------------+
3 rows in set (0.00 sec)
百分号 (%
) 表示零个、一个或多个字符。
从命令行显示 MySQL 表#
要从 Linux shell 获取有关表的信息,您可以使用mysql -e
命令或mysqlshow显示数据库和表信息的命令。
当您想要使用 shell 脚本处理 MySQL 数据库时,这尤其有用。
在终端上运行以下命令以显示所有数据库的列表:
mysql -u user -p -e 'SHOW TABLES FROM database_name;'
输出将显示所有表的列表:
+----------------------------+
| Tables_in_database_name |
+----------------------------+
| actions |
| permissions |
| permissions_roles |
| permissions_users |
| roles |
| roles_users |
| settings |
| users |
+----------------------------+
这是一个使用的示例mysqlshow
命令:
mysqlshow database_name
您可以使用以下命令过滤输出grep命令。
结论#
要获取有关 MySQL 数据库中的表的信息,请使用SHOW TABLES
命令。
如果您有任何疑问,请随时发表评论。