Find number of tables in MySQL database

The query below returns the total number of tables per database (schema).

Query

select table_schema as 'database',
    count(*) as 'tables'
from information_schema.tables
where table_type = 'BASE TABLE'
group by table_schema;

Columns

  • database - name of the database (schema)
  • tables - number of tables in the database (schema)

Rows

  • One row: represents a database (schema)
  • Scope of rows: all databases (schemas)

Sample results