Could running ANALYZE on all databases on large InnoDB tables show some performance increase? So we have an old database that was fragmented until we ran OPTIMIZE on all tables.

The database/tables are about 100GB in size.  Tables are InnoDB with heavy read/write activity.

There are so many different queries we decided to disable query_cache due to over 1 million+ queries being pruned daily, even with 512MB cache size (with 4mb min).

Would ANALYZE actually improve performance?
There are a few situations where running ANALYZE TABLE is beneficial


When you have innodb_stats_auto_update=0 set
When your statistics are already "messed up" and need a fixin'


If your table statistics frequently get into a "messed up" state (which would cause bad or strange query plans), as can be the case when a table has nightly purge or bulk insert jobs, you should consider setting innodb_stats_auto_update=0 and running a periodic manual ANALYZE TABLE.  Otherwise, let sleeping dogs lay and don't run it.

One caveat about ANALYZE TABLE is that it can cause problems if you have long running queries against the table because it flushes the table.  This means that, if you run ANALYZE TABLE while a query is running, no other tables will be able to access the table until the first query finishes.  I wrote ab-analyze-innodb to help address this problem by searching the process list to identify whether or not the table is actively being accessed.