列出(显示)MySQL数据库中的表
时间:2020-03-05 15:30:24 来源:igfitidea点击:
在管理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”或者“ IN”子句,后跟数据库名称:
SHOW TABLES FROM database_name;
“ 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”命令过滤输出。