正如我在serverfault上尚未看到的那样,答案很简单:
更改:
ssh -f -L3310:remote.server:3306 user@remote.server -N
至:
ssh -f -L3310:localhost:3306 user@remote.server -N
并更改:
mysqldump -P 3310 -h localhost -u mysql_user -p database_name table_name
至:
mysqldump -P 3310 -h 127.0.0.1 -u mysql_user -p database_name table_name
(不要使用localhost,这是可能通过套接字而不是通过端口连接的这些“特殊含义”废话之一)
编辑
:好,详细说明:如果将host设置为
localhost,
--socket则假定已配置(或默认)选项。请参见手册中有关寻求/使用选项文件的信息。在Windows下,这可以是命名管道。



