MongoDB导出与导入远程Linux服务器上的数据
场景
将远程服务器A上的MongoDB数据库test下的集合people导入到服务器B数据库test的集合people_test下。
简单方案
先将A服务器数据导出,然后再执行导入到B服务器。
下面的导入和导出操作,均是在git bash下执行,如果是在windows命令行下需要稍微更改路径。
工具
利用本地原生MongoDB安装目录下的bin目录中的mongoexport和mongoimport
导出数据
这里,我打算将远程服务器A上的数据导入到我本地windows系统e盘temp目录下;
首先,进入到MongoDB的安装目录,然后:
cd bin
mongoexport -u admin -p 123456 --authenticationDatabase admin -h 10.5.10.22:27017 -d test -c people -o /e/temp/people.json
参数 | 说明 |
---|---|
-u | 用户名 |
-p | 密码 |
--authenticationDatabase | 保存用户凭据的数据库(一般是admin) |
-h | host:port |
-d | 数据库名 |
-c | 表名(只能接受一个表名参数,不能接受由空格、逗号等 分隔的多个表名,也不能用"*") |
-o | 导出的文件名 |
--file | 导入的文件名 |
--upsert | 导入的记录创建或更新 |
更多详细的操作:mongoexport --help。
导入数据
这里我打算将本地windows系统e盘temp目录下的people.json文件导入到服务器B上;
也是在bin目录下;
mongoimport -u admin -p --authenticationDatabase admin -h 10.6.22.12: -d test -c people_test --file /e/temp/people.json --upsert rm /e/temp/people.json
总结
操作 | 执行 |
---|---|
导出 | mongoexport -u 用户名 -p 密码 --authenticationDatabase 用户凭据数据库 -h ip:port -d 数据库名 -c 表名 -o 导出的文件名.json |
导入后删除文件 | mongoimport -u 用户名 -p 密码 --authenticationDatabase 用户凭据数据库 -h ip:port -d 数据库名 -c 表名 --file 导出的文件名.json --upsert && rm 导出的文件名.json |
能够利用windows本地安装的MongoDB bin目录下的程序导入和导出远程服务器上的数据;
如果是导出本地MongoDB的数据,就不需要用户名和密码以及保存用户凭据的数据库。
MongoDB官方文档:https://docs.mongodb.com/manual/reference/program/mongoexport/
MongoDB导出与导入远程Linux服务器上的数据的更多相关文章
- Sublime Text编辑远程Linux服务器上的文件
sublime有个叫sftp的插件,可以通过它直接打开远程机器上的文件进行编辑,并在保存后直接同步到远程linux服务器上. 用Package Control安装插件 按下Ctrl+Shift+P调出 ...
- Linux下不借助工具实现远程linux服务器上传下载文件
# Linux下不借助工具实现远程linux服务器上传下载文件 ## 简介 - Linux下自带ssh工具,可以实现远程Linux服务器的功能- Linux下自带scp工具,可以实现文件传输功能 ## ...
- vscode实现远程linux服务器上Python开发
最近需要训练一个生成对抗网络模型,然后开发接口,不得不在一台有显卡的远程linux服务器上进行,所以,趁着这个机会研究了下怎么使用vscode来进行远程开发. 1 配置免密登录¶ (1)在 ...
- 用rsync备份一台linux服务器上的数据
rsync是安装完linux后都会自带的,在机器上运行rsync命令看是否有安装即可 备份到远程服务器 这里介绍的rsync的用途是备份一台linux服务器上的数据到另外一台机器 环境 将需要备份机器 ...
- 使用PhpStrom等IDE编辑 远程linux服务器上的文件 实时更新
习惯了在linux上 vim进行PHP的开发,突然忘了IDE的感觉,所以想到了.通过PhpStrom等IDE直接编辑 samba共享到 mac或者windows本地的磁盘进行编辑. 为了忘却的纪念,有 ...
- navicat突然连接不上远程linux服务器上的mysql
我linux服务器上的mysql是docker安装的,突然有一天我的navicat连接不上服务器上的mysql,于是开始了下面一系列的修复 1.首先登录服务器上mysql,看是否能正常登录,我发现不能 ...
- 使用Navicat连接管理远程linux服务器上的mysql数据库
第一步:选择连接,选择mysql 第二步:填写下面弹出框的信息:连接名随便写,主机名或IP地址:写上服务器的ip. 端口不变 用户名不变. 密码:输入服务器数据库的密码12345678. 接着测 ...
- 通过SecureCRT下载远程Linux服务器上的文件到本地Windows
sz 文件名[先cd到需要下载的文件的目录层] [root@is13084905-0233 bookinterface]# sz test.txt rz Starting zmodem transf ...
- windows平台是上的sublime编辑远程linux平台上的文件
sublime是个跨平台的强大的代码编辑工具,不多说. 想使用sublime完毕linux平台下django网站的代码编辑工作以提高效率(原来使用linux下的vim效率较低,适合编辑一些小脚本). ...
随机推荐
- ue4读取灰度图生成三维地形mesh
转自:https://www.cnblogs.com/gucheng/p/10116857.html 新建ue c++工程. 在Build.cs中添加"ProceduralMeshCompo ...
- Nginx是什么及作用?代理和反向代理解析
一:介绍 nginx是一个高性能的HTTP和反向代理服务器,其特点是占用内存少,并发能力强. 二:名词介绍 代理服务器: 代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络 ...
- C++ 把数组数据存入 CSV 文件,以及读取 CSV 文件的数据
1. CSV-百度百科 2. 代码 #pragma once //Microsoft Visual Studio 2015 Enterprise #include<iostream> #i ...
- redis客户端介绍及php客户端的下载安装
一.PHP客户端1.官方提供了几款PHP客户端,包括amphp/redis.phpredis.Predis.Rediska.推荐使用官方推荐的两款客户端,phpredis.Predis2.phpred ...
- IDEA中搭建Maven环境
一.maven的作用 maven是一个构建项目的工具 从项目的创建(代码.配置文件.测试代码如何存放) --> 项目代码的编译 --> 测试 -->项目发布上线 做一整套约定和解决方 ...
- 【转载】Java对象的生命周期
Java对象的生命周期 在Java中,对象的生命周期包括以下几个阶段: 1. 创建阶段(Created) 2. 应用阶段(In Use) 3. 不可见阶段(Invisib ...
- Python_爬虫小实例
爬虫小实例 一.问题描述与分析 Q:查询某一只股票,在百度搜索页面的结果的个数以及搜索结果的变化. 分析: 搜索结果个数如下图: 搜索结果的变化:通过观察可以看到,每个一段时间搜索结果的个数是有所变化 ...
- Hibernate中Session.get()/load()之区别
原文链接http://sunxin1001.iteye.com/blog/292090 Session.load/get方法均可以根据指定的实体类和id从数据库读取记录,并返回与之对应的实体对象.其区 ...
- java容易混淆的概念
容易混淆的内容 1.JVM内存模型 2.Java内存模型 3.Java对象模型 JVM内存模型 1.堆 2.虚拟机栈 3.本地方法栈 4.程序计数器 5.方法区 Java内存模型 Java堆和方法区的 ...
- iOS - 第三方库总结篇
Swift版本点击这里 欢迎加入QQ群交流: 594119878 About A curated list of iOS objective-C ecosystem. How to Use Simpl ...