您的位置:首页 > 数据库 > Mongodb

mongodb脚本从windows上传到linux无法执行

2015-08-31 11:37 519 查看

一:问题描述

这几次执行mongodb初始化脚本,发现一个问题:

将windows下的脚本上传到Linux下后,执行时,会报错。

如:

mongo -u root -p mongo123 admin --port 8000 < initdata-bmis.sql > initdata-bmis.log

 initdata-bmis.log文件里有很多错误:

SyntaxError: Unexpected token ILLEGAL

但是直接复制粘贴脚本内容在命令行里执行却不报错。或者将内容复制粘贴到Linux下新建的文件里,执行也不报错。
且该脚本确定没有语法错误。

二:出错原因

格式问题,windows和linux/unix的换行和空行符是不同的。

三:解决办法

方法一:

在notepad++中编辑时虽然是以utf8格式编码,但是还有个地方是需要转码的,windows和linux/unix的换行和空行符是不同的,所以在windows下编辑的脚本放到linux上就运行不了了,后查到在notepad++中可以进行转码。



方法二:

在Linux上安装dos2unix,然后进行转码

 yum install -y dos2unix

dos2unix initdata-bmis.sql

再次执行就不报错了:

mongo -u root -p mongo123 admin --port 8000 < initdata-bmis.sql > initdata-bmis.log
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: