(一)数据备份、恢复与迁移管理
1、备份全部数据库
mkdir testbak
cd testbak
mongodump
cd testbak
mongodump
说明:默认备份目录及数据文件格式为./dump/[databasename]/[collectionname].bson
2、备份指定数据库
mongodump -d pagedb
2、备份指定数据库
mongodump -d pagedb
说明:备份数据库pagedb中的数据。
3、备份一个数据库中的某个集合
mongodump -d pagedb -c page
说明:备份数据库pagedb的page集合。
4、恢复全部数据库
cd testbak
mongorestore --drop
mongorestore --drop
说明:将备份的所有数据库恢复到数据库,--drop指定恢复数据之前删除原来数据库数据,否则会造成回复后的数据中数据重复。
5、恢复某个数据库的数据
cd testbak
mongorestore -d pagedb --drop
说明:将备份的pagedb的数据恢复到数据库。
mongorestore -d pagedb --drop
说明:将备份的pagedb的数据恢复到数据库。
6、恢复某个数据库的某个集合的数据
cd testbak
mongorestore -d pagedb -c page --drop
说明:将备份的pagedb的的page集合的数据恢复到数据库。
mongorestore -d pagedb -c page --drop
说明:将备份的pagedb的的page集合的数据恢复到数据库。
7、向MongoDB导入数据
mongoimport -d pagedb -c page --type csv --headerline --drop < csvORtsvFile.csv
说明:将文件csvORtsvFile.csv的数据导入到pagedb数据库的page集合中,使用cvs或tsv文件的列名作为集合的列名。需要注意的是,使用--headerline选项时,只支持csv和tsv文件。
--type支持的类型有三个:csv、tsv、json
其他各个选项的使用,可以查看帮助:
--type支持的类型有三个:csv、tsv、json
其他各个选项的使用,可以查看帮助:
mongoimport --help options: --help produce help message -v [ --verbose ] be more verbose (include multiple times for more verbosity e.g. -vvvvv) -h [ --host ] arg mongo host to connect to ( <set name>/s1,s2 for sets) --port arg server port. Can also use --host hostname:port --ipv6 enable IPv6 support (disabled by default) -u [ --username ] arg username -p [ --password ] arg password --dbpath arg directly access mongod database files in the given path, instead of connecting to a mongod server - needs to lock the data directory, so cannot be used if a mongod is currently accessing the same path --directoryperdb if dbpath specified, each db is in a separate directory -d [ --db ] arg database to use -c [ --collection ] arg collection to use (some commands) -f [ --fields ] arg comma separated list of field names e.g. -f name,age --fieldFile arg file with fields names - 1 per line --ignoreBlanks if given, empty fields in csv and tsv will be ignored --type arg type of file to import. default: json (json,csv,tsv) --file arg file to import from; if not specified stdin is used --drop drop collection first --headerline CSV,TSV only - use first line as headers --upsert insert or update objects that already exist --upsertFields arg comma-separated fields for the query part of the upsert. You should make sure this is indexed --stopOnError stop importing at first error rather than continuing --jsonArray load a json array, not one item per line. Currently limited to 4MB.
8、从向MongoDB导出数据
mongoexport -d pagedb -c page -q {} -f _id,title,url,spiderName,pubDate --csv > pages.csv
说明:将pagedb数据库中page集合的数据导出到pages.csv文件,其中各选项含义:
-f 指定cvs列名为_id,title,url,spiderName,pubDate
-q 指定查询条件
其他各个选项的使用,可以查看帮助:
说明:将pagedb数据库中page集合的数据导出到pages.csv文件,其中各选项含义:
-f 指定cvs列名为_id,title,url,spiderName,pubDate
-q 指定查询条件
其他各个选项的使用,可以查看帮助:
mongoexport --help options: --help produce help message -v [ --verbose ] be more verbose (include multiple times for more verbosity e.g. -vvvvv) -h [ --host ] arg mongo host to connect to ( <set name>/s1,s2 for sets) --port arg server port. Can also use --host hostname:port --ipv6 enable IPv6 support (disabled by default) -u [ --username ] arg username -p [ --password ] arg password --dbpath arg directly access mongod database files in the given path, instead of connecting to a mongod server - needs to lock the data directory, so cannot be used if a mongod is currently accessing the same path --directoryperdb if dbpath specified, each db is in a separate directory -d [ --db ] arg database to use -c [ --collection ] arg collection to use (some commands) -f [ --fields ] arg comma separated list of field names e.g. -f name,age --fieldFile arg file with fields names - 1 per line -q [ --query ] arg query filter, as a JSON string --csv export to csv instead of json -o [ --out ] arg output file; if not specified, stdout is used --jsonArray output to a json array rather than one object per line
注意:
如果上面的选项-q指定一个查询条件,需要使用单引号括起来,如下所示:
mongoexport -d page -c Article -q '{"spiderName": "mafengwoSpider"}' -f _id,title,content,images,publishDate,spiderName,url --jsonArray > mafengwoArticle.txt
否则,就会出现下面的错误:
ERROR: too many positional options
(二)远程连接管理
1、基于mongo实现远程连接mongo -u admin -p admin 192.168.0.197:27017/pagedb
通过mongo实现连接,可以非常灵活的选择参数选项,参看命令帮助,如下所示:
mongo --help MongoDB shell version: 1.8.3 usage: mongo [options] [db address] [file names (ending in .js)] db address can be: foo foo database on local machine 192.169.0.5/foo foo database on 192.168.0.5 machine 192.169.0.5:9999/foo foo database on 192.168.0.5 machine on port 9999 options: --shell run the shell after executing files --nodb don't connect to mongod on startup - no 'db address' arg expected --quiet be less chatty --port arg port to connect to --host arg server to connect to --eval arg evaluate javascript -u [ --username ] arg username for authentication -p [ --password ] arg password for authentication -h [ --help ] show this usage information --version show version information --verbose increase verbosity --ipv6 enable IPv6 support (disabled by default)
2、基于MongoDB支持的javascript实现远程连接
当你已经连接到一个远程的MongoDB数据库服务器(例如,通过mongo连接到192.168.0.184),现在想要在这个会话中连接另一个远程的数据库服务器(192.168.0.197),可以执行如下命令:
> var x = new Mongo('192.168.0.197:27017') > var ydb = x.getDB('pagedb'); > use ydb switched to db ydb > db ydb > ydb.page.findOne() { "_id" : ObjectId("4eded6a5bf3bfa0014000003"), "content" : "巴黎是浪漫的城市,可是...", "pubdate" : "2006-03-19", "title" : "巴黎:从布鲁塞尔赶到巴黎", "url" : "http://france.bytravel.cn/Scenery/528/cblsegdbl.html" }
上述通过MongoDB提供的JavaScript脚本,实现对另一个远程数据库服务器进行连接,操作指定数据库pagedb的page集合。
如果启用了安全认证模式,可以在获取数据库连接实例时,指定认证账号,例如:
> var x = new Mongo('192.168.0.197:27017') > var ydb = x.getDB('pagedb', 'shirdrn', '(jkfFS$343$_\=\,.F@3'); > use ydb switched to db ydb
相关推荐
6. 备份与恢复:自动化或手动执行MongoDB备份,以防止数据丢失,并能快速恢复到特定时间点。 7. 图形化索引管理:创建、修改和删除索引,提升查询速度。 8. 集群管理:对于运行在集群环境中的MongoDB,这些工具...
如果数据在迁移或备份过程中出现问题,DBA需要采取相应的措施,比如恢复历史备份,来确保生产环境的数据完整性和一致性。 综上所述,MongoDB作为NoSQL数据库的代表,其提供的安全机制和高级管理功能是保障数据库...
6. **备份与恢复**:提供一键式备份和恢复功能,简化了MongoDB的数据保护流程。 7. **用户管理**:可以方便地创建、修改和删除数据库用户,设置权限,确保数据安全。 8. **集群管理**:如果您的MongoDB部署是...
MongoDB Database Tools是MongoDB公司提供的一个实用工具集合,包括mongodump、mongorestore、mongoimport、mongoexport等,用于数据迁移、备份和恢复。在提供的压缩包"mongodb-database-tools-windows-x86_64-100.3...
4. **备份与恢复**:管理工具通常提供备份和恢复功能,方便用户定期备份数据库以防止数据丢失,同时也支持在不同环境中恢复数据。 5. **性能监控**:监控数据库性能是管理的重要环节。这些工具可以显示CPU使用率、...
7. 备份与恢复:支持创建数据库备份,并可以在需要时快速恢复,保障数据安全。 8. 数据同步:可以进行数据迁移和同步,实现多个MongoDB实例之间的数据一致性。 9. 集群管理:对于MongoDB集群,Studio-3T提供了全面...
它还支持JSON格式的导入导出,方便数据迁移和备份。 3. 查询构建器:对于复杂的查询,Robo 3T提供了直观的查询构建器,用户可以通过拖放字段和选择运算符来构建查询,而无需手动编写复杂的MongoDB查询语句。 4. ...
4. **导入导出数据**:该工具支持从CSV、JSON、XML等格式导入数据到MongoDB,也可以将数据导出到这些格式,方便数据迁移和备份。 5. **性能监控**:MongoChef能显示数据库的实时性能指标,如内存使用、I/O操作、...
6. **备份与恢复**:内置了备份和恢复功能,用户可以方便地对数据库进行备份,并在需要时恢复到特定状态。 7. **性能监控**:mongobooster提供了实时性能监控,显示数据库的运行状态,如内存使用、磁盘I/O等,有助...
MongoDB是一种流行的开源、分布式文档数据库,用于存储和检索数据。...使用这个工具,你可以构建一个可靠且自动化的MongoDB备份解决方案,确保在面对数据丢失或系统故障时,能够迅速恢复业务正常运行。
- **连接管理**:NoSQL Manager允许你创建和管理多个MongoDB服务器的连接,包括本地和远程服务器,支持SSH隧道。 - **数据库和集合浏览**:你可以直观地查看数据库中的所有集合,以及集合中的文档。这个工具提供了...
mongodump 可以将数据库的数据和元数据导出为二进制文件,而 mongorestore 可以将这些备份文件导入回 MongoDB,实现数据库的备份和恢复。 3. **mongod**:这是 MongoDB 数据库服务的主进程,负责数据存储、查询处理...
安装完毕后,用户可以通过这个工具连接到本地或远程的MongoDB实例,开始进行数据库管理和开发工作。 总的来说,MongoDB Studio 3T 5.2.2为MongoDB用户提供了便捷且强大的管理工具,无论是新手还是经验丰富的开发者...
5. **备份与恢复**:用户可以使用MongoVUE进行数据库的备份和恢复,这在灾难恢复或定期数据保护时非常有用。 6. **性能监控**:MongoVUE能够显示服务器的性能指标,如CPU使用率、内存消耗、磁盘I/O等,帮助管理员...
7. **备份与恢复**:支持创建数据库的快照并进行恢复操作,确保数据安全。 8. **安全与权限管理**:管理用户账户和角色,设置访问控制,确保数据安全性。 9. **版本控制**:集成Git,实现对数据库更改的历史版本追踪...
- **恢复过程**:阐述了如何从备份中恢复数据。 #### 3.9 UNIX ulimit设置 - **资源限制**:解释了如何设置和调整Linux系统中的资源限制以适应MongoDB的需求。 #### 3.10 生产环境注意事项 - **最佳实践**:提供了...
在分布式环境中,有时我们需要在不同的主机之间复制数据库和集合以实现数据备份、故障恢复或者数据迁移。本教程将详细讲解如何使用MongoDB的几个关键命令来实现这一目标。 1. `db.cloneCollection()` `db....
标题中提到的"mongo 图形化 客户端"就是指这类工具,它们提供了一种直观的方式来与MongoDB交互,包括数据浏览、查询、备份、恢复以及数据库管理。 描述中的信息似乎与MongoDB图形化客户端的安装或卸载问题有关。...