When i was flushing my localhost I was getting an error saying could not connect to the db trying to use my remote connection string. It turns out that because I had a file remoteCopy_of_configure.php that SS was trying to "compile" that and use it a the connection. I changed the name to _configureLocal.php and SS no longer tries to use it.
When uploading from Windows to Linux their is a problem with db names. Because Windows is not case sensitive phpmyadmin exports the table names all in lower case. What I ended up doing was build the db remotely, the exporting the data only locally, then search and replacing every table name to CamelCase.
check out http://doc.silverstripe.com/doku.php?id=debug. You can set you localhost server to a dev server ( Director::set_dev_servers() ) and then use Director::isLive() and Director::isDev() to use different _config.php files