Podczas zarządzania serwerami baz danych MySQL, jednym z najczęstszych zadań jest zapoznanie się z ich środowiskiem. Obejmuje to listowanie baz danych znajdujących się na serwerze, wyświetlanie tabel bazy danych lub pobieranie informacji o kontach użytkowników i ich uprawnieniach .
Ten artykuł pokazuje, jak wyświetlić listę tabel w bazie danych MySQL lub MariaDB za pomocą wiersza poleceń.
Pokaż tabele MySQL #
Aby uzyskać listę tabel w bazie danych MySQL, użyj narzędzia klienckiego mysql
aby połączyć się z serwerem MySQL i uruchomić polecenie SHOW TABLES
.
Dostęp do serwera MySQL:
mysql -u user -p
Z poziomu powłoki MySQL przełącz się do bazy danych za pomocą polecenia USE
:
USE database_name;
Wykonaj następujące polecenie, aby uzyskać listę wszystkich tabel i widoków w bieżącej bazie danych:
SHOW TABLES;
Wyjście będzie wyglądać coś takiego:
Opcjonalny modyfikator FULL
wyświetli typ tabeli jako drugą kolumnę wyjściową.
SHOW FULL TABLES;
Wyjście będzie wyglądać następująco:
Aby uzyskać listę tabel bez przechodzenia do bazy danych, użyj klauzuli FROM
lub IN
, a następnie nazwy bazy danych:
SHOW TABLES FROM database_name;
LIKE
Klauzula LIKE
może być użyta do filtrowania danych wyjściowych polecenia SHOW TABLES
według określonego wzorca.
SHOW TABLES LIKE pattern;
Na przykład, poniższa instrukcja zwróci wszystkie bazy danych, których nazwy zaczynają się od 'open':
SHOW TABLES LIKE 'permissions%';
+-------------------------------------------+| Tables_in_database_name (permissions%) |+-------------------------------------------+| permissions || permissions_roles || permissions_users |+-------------------------------------------+3 rows in set (0.00 sec)
Znak procentu (%
) oznacza zero, jeden lub wiele znaków.
Pokaż tabele MySQL z wiersza poleceń #
Aby uzyskać informacje o tabelach z poziomu powłoki Linuksa, możesz użyć polecenia mysql -e
lub mysqlshow
, które wyświetla informacje o bazach danych i tabelach.
Jest to szczególnie użyteczne, gdy chcesz pracować z bazami danych MySQL używając skryptów powłoki.
Wykonaj następujące polecenie w swoim terminalu, aby wyświetlić listę wszystkich baz danych:
mysql -u user -p -e 'SHOW TABLES FROM database_name;'
Wyświetli ono listę wszystkich tabel:
+----------------------------+| Tables_in_database_name |+----------------------------+| actions || permissions || permissions_roles || permissions_users || roles || roles_users || settings || users |+----------------------------+
Jest to przykład z użyciem polecenia mysqlshow
:
mysqlshow database_name
Możesz filtrować dane wyjściowe za pomocą polecenia grep
.
Zakończenie #
Aby uzyskać informacje o tabelach w bazie danych MySQL, użyj polecenia SHOW TABLES
.