If you are able to connect after restart, then mismatching SID's could be only thing which I can think of. We had same issue in our environment and after SID's were mapped and the application user's default DB was set, it got resolved.
If that is already set, I couldn't think of anything else but I will try this in my testing env when I get some time and will let you know. Sorry I couldn't help.