今天就跟大家聊聊有关怎么将Mysql数据导入到MongoDB,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
(1)从mysql导出数据位csv文件,如:
Java代码
SELECT * FROM APP_CALL_LOG_1362959187037 WHERE CREATE_TIME < '2013-03-07 14:45:04' into outfile '/tmp/all_call_log_012.csv' fields terminated by ',' lines terminated by '\n';
(2)导入csv文件到mongodb,如:
Java代码
bin/mongoimport --host 114.112.94.104 --port 27017 -d lb_v1_log -c APP_CALL_LOG --type csv --ignoreBlanks -f ID,IP,URI,URL,D_CODE,D_TYPE,UID,APP_FROM,CREATE
_TIME,USER_AGENT,REMARK -file /usr/local/all_call_log_012.csv
(3)对导入数据矫正处理,如:
Java代码
pmy_log_rs:PRIMARY> db.APP_CALL_LOG.update({UID:"\\N"}, { $set: { 'UID': null} },false,true);
pmy_log_rs:PRIMARY> db.APP_CALL_LOG.update({IP:"\\N"}, { $set: { 'IP': null} },false,true);
pmy_log_rs:PRIMARY> db.APP_CALL_LOG.update({D_TYPE:"\\N"}, { $set: { 'D_TYPE': null} },false,true);
pmy_log_rs:PRIMARY> db.APP_CALL_LOG.update({D_CODE:"\\N"}, { $set: { 'D_CODE': null} },false,true);
pmy_log_rs:PRIMARY> db.APP_CALL_LOG.update({CREATE_TIME:"\\N"}, { $set: { 'CREATE_TIME': null} },false,true);
pmy_log_rs:PRIMARY> db.APP_CALL_LOG.update({APP_FROM:"\\N"}, { $set: { 'APP_FROM': null} },false,true);
pmy_log_rs:PRIMARY> db.APP_CALL_LOG.update({URI:"\\N"}, { $set: { 'URI': null} },false,true);
pmy_log_rs:PRIMARY> db.APP_CALL_LOG.update({URL:"\\N"}, { $set: { 'URL': null} },false,true);
pmy_log_rs:PRIMARY> db.APP_CALL_LOG.update({USER_AGENT:"\\N"}, { $set: { 'USER_AGENT': null} },false,true);
pmy_log_rs:PRIMARY> db.APP_CALL_LOG.update({REMARK:"\\N"}, { $set: { 'REMARK': null} },false,true);
(4)字段类型矫正,如:
Java代码
db.APP_CALL_LOG.find({}).forEach( function (x) {x.D_CODE = ""+x.D_CODE;db.APP_CALL_LOG.save(x);});
看完上述内容,你们对怎么将Mysql数据导入到MongoDB有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。