我试图在Windows上使用plink
来创建到Linux计算机的隧道,并使转储文件在Windows计算机上结束。这似乎this answer将工作,并且是我的问题的基础。但试一试,看看其他答案,我发现转储文件仍然在Linux机器上。我正在使用Windows和Ubuntu 14.04在本地环境中尝试此操作,然后再转到生产环境。在Windows 8.1:将mysqldump自动运行到本地Windows计算机
plink [email protected] -L 3310:localhost:3306
mysqldump --port=3310 -h localhost -u sam -p --all-databases > outfile.sql
我试着换localhost
在第二位127.0.0.1
,将-N
隧道设置的尾部,在dump命令,但尽管我的隧道使用一个表,就好像第一命令被忽略。其他答案表示要向脚本添加更多命令,以便我可以使用pscp
复制文件。这也意味着重新连接到垃圾桶outfile.sql
。不适合在其他服务器上获取其他转储。如果是这样的话,为什么要使用第一个命令呢?
我在忽略什么?在plink
中,第一个的输出是打开Linux服务器,我可以运行mysqldump
命令。但似乎忽略了第一条命令。你怎么看?
你在哪里执行'mysqldump'? – 2015-02-12 07:28:28
是的,很好的问题。在Windows cmd中,我执行了plink中的第一个命令来创建隧道。它作为登录的ssh命令进入Linux主机。因此mysqldump在linux服务器上执行。我在Linux的其他SO帖子中看到,他们最后使用了'-N'标志。试图在Windows中这样做,留下了CMD程序。于是我打开了一个新的CMD窗口,并执行了mysqldump来判断隧道是否打开。我相信这里缺少一些东西。 – sam452 2015-02-12 19:33:50