mongodb数据到MySQL数据库 的迁移步骤

 废话少说,直接上干货。

1、mongoexport -d shengyang -c testData -f _id,x,name,name1,name2 --type=csv -o new.csv

  用mongodb自带的mongoexport先导出mongo数据库现有的一个数据表。远程导出的话要

  指定h(主机ip),有用户名和密码的还要指定-u(用户名) -p(密码)。如果没有就算了。

  -d 是指定要导出的数据库。

  -c 是导出那一张表。

  -f _id 指定格式,后面的x啊,name啊都是相应的字段,如果不记得可以find命令查几条数据看看

  就知道了。

  --type 这个很重要,因为MySQL就是要导入指定的数据格式的。所以再mongo这边导出的时候

  一定要指定导出的格式为***.csv。

  

第二部分(将mongo导出来的数据导入到MySQL中)

  1、首先进入到MySQL的窗口界面吧,就是这样。

  

  2、创建一个与mongo那边同名的数据库,记得指定数据格式为utf8,这样可以避免后期导入数据出现乱码。

      create database shengyang DEFAULT CHARACTER SET utf8;

  3、再再这个数据库里面创建跟mongo那边同样名字和字段的表!!!!

    注意:一定要字段这些都要一样,不然的话待会不好导入。

    create table testData(x int,name varchar(20),name1 varchar(20),name2 varchar(20),name3 varchar(20));

  4、确定这些都操作好之后就可以导入数据了。

  LOAD DATA INFILE "/tmp/new.csv" REPLACE INTO TABLE testData FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '"' LINES TERMINATED BY ' ';

    /tmp/new.csv是mongo导出数据的时候存放的地方,最好放这里。可以避免权限问题。如果放在其它地方

    即使给了777的权限有时候也会出现导不进去。本人就是遇到这种情况。

    然后我果断把它放到tmp目录下,果然一导就ok了

原文地址:https://www.cnblogs.com/xingyunfashi/p/8796107.html