Steps after restoring to a different server We have a 30 GB Database on SQL Server 2008 R2 Standard Edition. Yesterday we backed up the database and restored it to a different Virtual Machine which has exactly the same specs as the previous machine - The only exception being the new VM has a lot more RAM.

However we found that the performance of the older VM was much better than this new VM. My questions are:


Should we re-create / refresh all the indexes in the Database after such a restore ? If so then is there a good way to refresh all indexes with ease (as opposed to one index at a time).
Is there any other obvious step which we are missing - We don't have an in-house DBA as the work we do on the database front is not much.
Should we re-create / refresh all the indexes in the Database after such a restore ? If so then is there a good way to refresh all indexes with ease (as opposed to one index at a time).


Its always a good idea to do a reorg/rebuild and update stats after a database refresh to a different server. This is one of the post restore step that I do when I  restore a database to a different server

You can happily use the SQL Server Index and Statistics Maintenance - from Ola Hallengren.


  Is there any other obvious step which we are missing - We don't have an in-house DBA as the work we do on the database front is not much.


I have a detailed post restore steps outlined in this answer. That will help you. 
Even though it is for an upgrade, but the post restore steps are same.


  The only exception being the new VM has a lot more RAM


If the only exception is more RAM on the new server, then try enabling the Trace Flag T2335. Paul White has a detailed explanation of why that would happen with MORE Memory. I have shared, what Microsoft recommended in our case as well.