There are two main reasons for this error message to show:
1) The MySQL query you are trying to execute takes too long and the MySQL server times out.
The solution for this issue is to optimise your database for the queries which fail.
2) You have a crashed table in your database.
The solution in this case is to repair and optimize your database.
If a particular table crashes often and repairing/optimising it does not help, this most probably means that the table's structure is not working properly with our MySQL server setup. In such cases the easiest way to fix a crashed MyISAM table for good is to change its database engine from MyISAM to InnoDB.