Introducción
Al administrar servidores de bases de datos MySQL, una de las tareas más frecuentes que realizará es familiarizarse con el entorno. Esto incluye enumerar las bases de datos que residen en el servidor, ver las tablas de la base de datos o recuperar información sobre las cuentas de usuario y sus privilegios.
Este artículo muestra cómo listar tablas en una base de datos MySQL o MariaDB a través de la línea de comando.
Mostrar las tablas de MySQL
Para obtener una lista de las tablas en una base de datos MySQL, use la mysql
para conectarse al servidor MySQL y ejecute el comando SHOW TABLES
Inicie sesión en el servidor MySQL:
mysql -u user -p
Desde dentro del shell de MySQL, cambie a la base de datos usando la declaración USE
USE database_name;
Ejecute el siguiente comando para obtener una lista de todas las tablas y vistas en la base de datos actual:
SHOW TABLES;
La salida se verá así:
+----------------------------+
| Tables_in_database_name |
+----------------------------+
| actions |
| permissions |
| permissions_roles |
| permissions_users |
| roles |
| roles_users |
| settings |
| users |
+----------------------------+
8 rows in set (0.00 sec)
El FULL
mostrará el tipo de tabla como la segunda columna de salida.
SHOW FULL TABLES;
La salida se verá así:
+----------------------------+------------+
| 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)
Para obtener una lista de las tablas sin ir a la base de datos, use la FROM
o IN
seguida del nombre de la base de datos:
SHOW TABLES FROM database_name;
La LIKE
se puede utilizar para filtrar la salida del SHOW TABLES
acuerdo con un patrón específico.
SHOW TABLES LIKE pattern;
Por ejemplo, la siguiente declaración devolverá todas las bases de datos cuyos nombres comiencen con 'permisos':
SHOW TABLES LIKE 'permissions%';
+-------------------------------------------+
| Tables_in_database_name (permissions%) |
+-------------------------------------------+
| permissions |
| permissions_roles |
| permissions_users |
+-------------------------------------------+
3 rows in set (0.00 sec)
El signo de porcentaje %
indica cero, uno o más caracteres.
Mostrar tablas de MySQL desde la línea de comandos
Para obtener información sobre tablas desde el shell de Linux, puede usar el mysql -e
o el mysqlshow
que muestra la información de la base de datos y la tabla.
Esto es especialmente útil cuando desea trabajar con bases de datos MySQL utilizando scripts de shell.
Ejecute el siguiente comando en la terminal para mostrar una lista de todas las bases de datos:
mysql -u user -p -e 'SHOW TABLES FROM database_name;'
La salida mostrará una lista de todas las tablas:
+----------------------------+
| Tables_in_database_name |
+----------------------------+
| actions |
| permissions |
| permissions_roles |
| permissions_users |
| roles |
| roles_users |
| settings |
| users |
+----------------------------+
Aquí hay un ejemplo usando el comando mysqlshow
mysqlshow database_name
Puede filtrar la salida con el comando grep
Conclusión
Para obtener información sobre las tablas en una base de datos MySQL, use el comando SHOW TABLES