mongodb 数据库迁移
使用 mongodump 命令备份数据库
mongodump -h 主机名:端口 -d 数据库名称 -o 备份路径
例子:
/usr/local/mongodb/bin/mongodump -d sns -o /data/sns-all-20170823
使用 mongorestore 命令还原数据库
mongorestore -h 主机名:端口 -d 数据库名称 --dir 数据库备份文件所在目录
例子:
/usr/local/mongodb/bin/mongorestore -d sns --dir /data/sns-all-20170823/sns
mongodb 数据导入导出
使用 mongoexport 导出
mongoexport -d dbname -c collectionname -o file --type json/csv -f field
参数说明:
-d :数据库名
-c :collection名
-o :输出的文件名,备份名称
--type : 输出的格式,默认为json
-f :输出的字段,如果-type为csv,则需要加上-f "字段名"
示例:
/usr/local/mongodb/bin/mongoexport -d mongotest -c users -o /home/python/Desktop/mongoDB/users.json --type json -f "id,user_id,user_name,age,status"
数据导入:mongoimport
mongoimport -d dbname -c collectionname --file filename --headerline --type json/csv -f field
参数说明:
-d :数据库名
-c :collection名
--type :导入的格式默认json,json或者csv
-f :导入的字段名
--headerline :如果导入的格式是csv,则可以使用第一行的标题作为导入的字段
--file :要导入的文件
示例:
/usr/local/mongodb/bin/mongoimport -d mongotest -c users --file /home/mongodump/articles.json --type json
例子:
常用命令格
mongodump -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径
如果没有用户,可以去掉-u和-p。
如果导出本机的数据库,可以去掉-h。
如果是默认端口,可以去掉--port。
如果想导出所有数据库,可以去掉-d。
导出全部数据库
mongodump -h 127.0.0.1 -o /data/mongodb/
导出指定数据库
mongodump -h 127.0.0.1 -d test -o /data/mongodb
mogodb 过滤条件导出
./mongoexport -d sns_pre -c snsPosts -q '{tid:123123}'' -o sns.json
导入
mongoimport -d sns -c snsPosts sns.json
网友评论