#1146 table 'db.tablename' doesnt exist
I know this question is a year old but thought I would post an answer considering there is no real answer to this that I have found. In this answer, for the remote server commands, I'm assuming you're using a Linux Debian-based OS. Otherwise there is another option at the end.

This sounds like an issue in the storage engine "ibdata1" file in your /var/lib/mysql/ folder. It can happen if the tables aren't copied correctly. So the storage engine can't present the database correctly even though the tables are there.

The best way to resolve this issue is to do a mysqldump on the healthy database on the remote server and restore the tables back into your local database server and vice versa.  So, if you have root or sudo access on your remote server and your mysql password you can use:

$ mysqldump -u root -p *database-name* &gt; *sqlbackupname*.sql
$ Enter mysql password: *your-mysql-password*


This will dump your database into a .sql backup. Then to restore the database on your localhost you can run this in your linux terminal:

$ mysql -u root -p *database-you-want-to-restore-to* &lt; *sqlbackupname*.sql


So you're going to need to have a database set up ready to accept the information into it and then the information in the mysqldump will be restored to that database. The mysqldump will look for a database to dump into. 

If you DO NOT have server access and you're only using phpmyadmin, you'd be best exporting the healthy database from your remote server into a .sql file. So go to your healthy database, then click the "export" button at the top. That will give you some options and  download onto your computer. Then you can "import" the file back into your local install of phpmyadmin. This option should work on any operating system as long as you're using phpmyadmin.

I hope this works for someone who is searching for the answer to this issue.