MySQL에서 특정 데이터베이스에 포함된 테이블 목록을 확인하려면 mysqlshow 클라이언트 프로그램을 데이터베이스 이름과 함께 사용하면 됩니다. 별도로 MySQL 서버에 접속하지 않고도 명령줄에서 바로 결과를 확인할 수 있어 매우 편리합니다.
기본 문법
Mysqlshow -u root db_name [pat_matching]
옵션 설명
- db_name: 테이블 목록을 조회하려는 데이터베이스의 이름입니다.
- pat_matching (선택 사항): 특정 패턴과 일치하는 테이블만 조회할 때 사용합니다. 패턴을 지정하지 않으면 해당 데이터베이스에 저장된 모든 테이블이 표시됩니다.
예제 1: 전체 테이블 목록 조회
다음 명령어는 'query' 데이터베이스의 모든 테이블을 출력합니다.
C:\mysql\bin>mysqlshow -u root query Database: query +---------------------+ | Tables | +---------------------+ | cars | | cars_avgprice | | customers | | detail_bday | | emp | | emp123 | | emp_t | | examination_btech | | first_view | | info | | item_list | | item_list1 | | new_number | | reservation | | reservations | | reserve | | student | | student_detail | | student_info | | student_marks | | tender | | tender1 | | view_detail | | view_student_detail | | website | +---------------------+
예제 2: 패턴 매칭으로 특정 테이블만 조회
테이블 이름에 'student'가 포함된 테이블만 조회하고 싶다면 와일드카드 %를 활용한 패턴 매칭을 사용할 수 있습니다.
C:\mysql\bin>mysqlshow -u root query %student% Database: query Wildcard: %student% +---------------------+ | Tables | +---------------------+ | student | | student_detail | | student_info | | student_marks | | view_student_detail | +---------------------+
참고: SQL 문으로 테이블 목록 확인하기
이미 MySQL 서버에 접속해 있는 상태라면 SHOW TABLES 문을 사용해 동일한 결과를 얻을 수 있습니다.
USE query; SHOW TABLES;
패턴 매칭이 필요한 경우에는 다음과 같이 LIKE 절을 함께 사용하면 됩니다.
SHOW TABLES LIKE '%student%';
명령줄 환경에서는 mysqlshow를, MySQL 클라이언트 안에서는 SHOW TABLES 문을 상황에 맞게 활용하면 됩니다.