You may want to disable the variable innodb_stats_on_metadata.
According to the MySQL Documentation on innodb_stats_on_metadata
When this variable is enabled (which is the default, as before the
variable was created), InnoDB updates statistics during metadata
statements such as SHOW TABLE STATUS or SHOW INDEX, or when accessing
the INFORMATION_SCHEMA tables TABLES or STATISTICS. (These updates are
similar to what happens for ANALYZE TABLE.) When disabled, InnoDB does
not update statistics during these operations. Disabling this variable
can improve access speed for schemas that have a large number of
tables or indexes. It can also improve the stability of execution
plans for queries that involve InnoDB tables.
Since you are using Amazon RDS, ask your DB Administrators to disable it. If your DBs are in a Shared Resource, my condolences...
UPDATE 2012-07-25 14:45 EDT
If you can download the RDS CLI, you can adjust innodb_stats_on_metadata in a customized DB Parameter Group. You will have to do the following:
- mysqldump data out of RDS Server
- destroy DB Server Instance
- create DB Server Instance using your custom DB Parameter Group adjusted for
innodb_stats_on_metadata
- reimport the mysqldump into new DB Instance
Since Amazon RDS does not give away SUPER privilege, that's the only way to change a GLOBAL static option.
UPDATE 2012-07-27 16:34 EDT
Without SUPER Privilege, you can modify a DB Parameter Group for a given MySQL RDS Instance, and launch a reboot with one of the following:
rds-reboot-db-instance <DBInstanceName>
- Click Reboot Button in the RDS Management Console