Xzen, Since SSH is using the localhost:3306 port to tunnel to the remote host, I believe that comparing a local instance of MySQL to a remote instance over SSH is possible only if you change the port of one of the instances.
Local Remote 3306 => 3306
Local Local 3307 => 3307
Otherwise, SSH and MySQL are going to collide over use of port 3306. Does that make sense?
Thanks for the tip, I changed the local port to 3007, but it looks like the problem is somewhere else. I can connect over ssh to my remote database (with connection manager). If I go to Tools -> Compare -> Schema, a dialog pops up with "New Compare". There I can't connect to the ssh server (If I press DropDown for Database Selection it Says: "Can't connect to MySQL server on 'localhost'(100061) Devart.Data.MySql"). The same happens on Data Compare and it does not matter if Source or Target.
Hmmm. I don't think that's suppose to work that way. Let me talk with the folks that work on the schema and data compare. I'll run some tests of my own, and see if I can connect. I'll get back to you with what I find.
Has there been any developments on this topic? I'm trying to do the same thing.
I don't even have to do it over SSH, SSH was just the easiest connection type for me to under stand since I already use SSH to terminal into the server. If you can instruct me how to use a different connection type, I'll try the schema compare that way. My computer is windows and my server debian.
I do this all the time using a tunnel with a port forwarding. I assign a different port locally (like 3307) and the actual port remote (3306). This way I connect locally to 3307 and get the system remotely.
Check out http://www.ssh.com/support/documentation/online/ssh/adminguide/32/Port_Forwarding.html for directions on this. If you're on windows, you can use cygwin to set the forwarding, and are other tools you can use if preferred.
I tried investigating your link but it seems like they're restructured their site and the link isn't valid anymore. I poked around a little but still didn't find much. Maybe if you wouldn't mind explaining the scenario a little more I'm sure I can figure it out.
This is what I understand so far
Use an ssh client such as Putty, and open ssh connection with tunneling.
Connect Toad, through the SSH connection manager
Because toad is using port 3306 for it's ssh connection, that is why it is necessary to have putty create a tunnel on a different port, such as 3307? Which I could still have putty connect on 3307 but the server would port forward back to 3306?
However, the compare tool doesn't seem to use these SSH configuration. It tries to connect on user@localhost in stead of using the SSH tunnel (email@example.com). The result is, obviously, a time out error as I don't run a MySQL server on localhost (my workstation).
A workaround is to setup a SSH tunnel in something like Putty. This works for now, but is off course inconvenient.
I think it's save to say this is a bug? Any help in this would be highly appreciated!