Answers:
COUNT(1),这将是最快的方法。
                    因为没有人提到它:
show table status;列出所有表以及一些其他信息,包括每个表的估计行。这就是phpMyAdmin用于其数据库页面。
该信息在MySQL 4中可用,可能在MySQL 3.23中也可用-较长时间的先前信息架构数据库。
由于投票否决,我想澄清一下显示的数字是针对InnoDB和TokuDB估算的,所以对于MyISAM和Aria(Maria)存储引擎来说绝对正确。
根据文档:
行数。某些存储引擎(例如MyISAM)存储准确的计数。对于其他存储引擎,例如InnoDB,该值是一个近似值,可能与实际值相差40%至50%。在这种情况下,请使用SELECT COUNT(*)获得准确的计数。
这也是查看MySQL上行数的最快方法,因为查询如下:
select count(*) from table;执行全表扫描可能是非常昂贵的操作,在大型高负载服务器上可能要花费数小时。它还会增加磁盘I / O。
相同的操作可能会阻止该表进行插入和更新-这仅在外部存储引擎上发生。
InnoDB和TokuDB可以使用表锁定,但是需要全表扫描。
我们还有另一种方法来查找表中的行数,而无需在该表上运行select查询。
每个MySQL实例都有一个information_schema数据库。如果运行以下查询,它将提供有关该表的完整详细信息,包括该表中的大约行数。
select * from information_schema.TABLES where table_name = 'table_name'\G只是:
SELECT COUNT(*) FROM `tablename`If you have several fields in your table and your table is huge, it's better DO NOT USE * because of it load all fields to memory and using the following will have better performance 
SELECT COUNT(1) FROM fooTable;正如Santosh所提到的,我认为此查询是适当的快速,而不是查询所有表。
要为特定数据库中的特定表名返回数据记录数的整数结果:
select TABLE_ROWS from information_schema.TABLES where TABLE_SCHEMA = 'database' 
AND table_name='tablename';count(*)在绩效意识中使用精确的计数,则在所有答案中都非常清楚
                    
tablename