使用Force在Windows上导入大型MySQL .sql文件

我想在Windows 7机器上导入一个350MB的MysqL .sql文件.我通常通过使用来做到这一点
MysqL -uuser -p -e "source c:/path/to/file.sql" database

因为<在Powershell中不起作用. 我的.sql文件这次有错误.我宁愿跳过坏行并继续导入.如何强制导入在Windows上继续? 在基于unix / linux的系统上,我可以使用

MysqL --force ... < file.sql

但是–force似乎不能使用-e“source …”命令(可以理解).

谢谢,
麦克风

您可能必须让Powershell在标准控制台中执行此操作才能使用<正常.从技术上讲,你可以使用get-content并将输出传递给MysqL,但我总是发现它很慢,并且它仍然以某种方式将文件内容保存在Powershell会话的内存中. 这就是我如何从Powershell提示符执行它(更改文件路径以包含空格以演示内部引号,以防万一):
cmd /C 'MysqL -uuser -p --force < "C:\path\with spaces\to\file.sql"'

[GC] :: collect()显然会清除内存,但是在完成之后你才能这样做.说到MysqLMysqLdump,我不打扰Powershell. >中使用的认编码是Unicode,使得转储文件的容量是Powershell的两倍,而不是cmd,除非你记得写| out-file dump.sql -enc ascii而不是> dump.sql.

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...