Can putting mysql DB into memory or having the innodb_buffer_pool_size match the size of DB increase performance?
I have a client at my employer's company with 192GB RAM using 162GB Buffer Pool.

Here is what we did for the client


InnoDB Tuning : I set the following options


innodb_read_io_threads (maxed it to 64)
innodb_write_io_threads (maxed it to 64)
innodb_thread_concurrency = 0 (It's default now in MySQL 5.5/5.6)
innodb_io_capacity (set it to IOPs of Disk, for this client, 20000 [2-0-0-0-0 not typo])
innodb_buffer_pool_size=162G
innodb_buffer_pool_instances=2 (Number of Physical Cores)

OS Tuning (numactl --interleave=all)


If you forget numactl --interleave=all, the buffer pool experiences swapping.

Here are my past posts on tuning InnoDB


Oct 22, 2012 : How large should be mysql innodb_buffer_pool_size?
Jul 23, 2012 : How to get the most out of MySQL on a QuadCore machine with 16 GB of RAM?
Jul 21, 2012 : InnoDB - High disk write I/O on ibdata1 file and ib_logfile0
Sep 20, 2011 : Multi cores and MySQL Performance
Sep 12, 2011 : Possible to make MySQL use more than one core?