为了账号安全,请及时绑定邮箱和手机立即绑定

MongoDB导入导出备份恢复实践

2019.04.22 15:49 566浏览

毕业设计使用机器学习分类算法来训练新闻分类模型,从 MongoDB 数据库读取爬虫获取的新闻文本数据(300多万条数据),自己笔记本性能有限,6个机器学习分类算法搞了一天只跑出来一个 LR 的,所以想借助基友大学实验室 2 万多的主机来跑模型,但是考虑到他本地并没有装 MongoDB 的环境,我就想把本地的 MongoDB 数据库中的数据上传到自己的阿里云服务器上,方便后面使用他的主机(哈哈~)。在云服务器上搭建好 MongoDB 的环境,接下来就是把数据导入进去了,也学习下 MongoDB 的导入导出备份恢复。

MongoDB 的导入导出只对于单个表,而我想把整个数据库都导出来,只能使用 MongoDB 的备份功能。

这里需要注意的是 MongoDB 默认安装好是没有设置密码的,可以直接免密登登录,我本地的 MongoDB 是设置了密码,服务器上的为了方便使用临时未设置密码。

下面就简单介绍备份(mongodump)、恢复(mongorestore)、导出(mongoexport)、导入(mongoimport)这四个命令和自己的实践。

备份命令:

详情见MongoDB官方文档 MongoDB官方文档mongodump命令

基本语法:mongodump -h dbhost -d dbname -o dbdirectory

参数说明:

-h: MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017

-d: 需要备份的数据库实例,例如:test

-o: 备份的数据存放位置,目录要提前建好

--port:端口号

下面这几个参数是设置了用户密码才会用到,类似于 MySQL 数据库

-u:用户名

-p:密码

--authenticationDatabase admin:验证用户名密码是否正确,否则会报权限错误

下图为我本地设置过用户名和密码的备份 news 数据库实践

{% asset_img MogoDB备份指定数据库.png MogoDB备份指定数据库%}

恢复命令

详情见MongoDB官方文档 MongoDB官方文档mongorestore命令

基本语法:mongorestore -h dbhost -d dbname --dir dbdirectory

参数说明:

-h: MongoDB所在服务器地址

-d: 需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2

--dir: 备份数据所在位置

其他参数这里就不多说了

下图为在我服务器上恢复 news 数据库的实践

{% asset_img MogoDB恢复指定数据库.png MogoDB恢复指定数据库%}

导出命令

详情见MongoDB官方文档 MongoDB官方文档mongoexport命令

基本语法:mongoexport -d dbname -c collectionname -o file --type json/csv -f field

参数说明:

-d :数据库名

-c :collection名

-o :输出的文件名

--type : 输出的格式,默认为json,,可以不用加,指定文件名的时候就指定文件格式

-f :输出的部分字段,如果-type为csv,则需要加上-f “字段名”

下图为我本地设置过用户名和密码的导出 news 数据库中的 test 表实践

{% asset_img MongoDB导出指定数据库中指定表.png MongoDB导出指定数据库中指定表%}

导入命令

详情见MongoDB官方文档 MongoDB官方文档mongoimport命令

基本语法:mongoimport -d dbname -c collectionname --file filename --headerline --type json/csv -f field

参数说明:

-d :数据库名

-c :collection名

--type :导入的格式默认json

-f :导入的字段名

--headerline :如果导入的格式是csv,则可以使用第一行的标题作为导入的字段

--file :要导入的文件

下图为在我服务器上导入 test 表的实践

{% asset_img MongoDB导入指定数据库中指定表.png MongoDB导入指定数据库中指定表%}

参考文章:

点击查看更多内容

本文首次发布于慕课网 ,转载请注明出处,谢谢合作

0人点赞

若觉得本文不错,就分享一下吧!

评论

相关文章推荐

正在加载中
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消