本节书摘来异步社区《大数据存储:MongoDB实战指南》一书中的第1章,第1.8节,作者: 郭远威 , 彭文波 责编: 陈冀康,更多章节内容可以访问云栖社区“异步社区”公众号查看。
1.8 几个重要的进程介绍
大数据存储:MongoDB实战指南
通过官网下载的二进制包中有几个重要的可执行文件,这些可执行文件运行后都会对应一个相应的进程。
1.8.1 mongod进程
Mongod.exe为启动此数据库实例进程对应的可执行文件,是整个MongoDB中最核心的内容,负责数据库的创建、删除等各项管理工作,运行在服务器端为客户端提供监听,相当于MySQL数据库中的mysqld进程。
启动数据库实例会用到以下命令。
mongod --config E:MongoDB-win32-i386-2.6.3test_single_instance123.conf
配置文件123.conf内容如下所示。
dbpath = E:\MongoDB-win32-i386-2.6.3\test_single_instance\data
logpath = E:\MongoDB-win32-i386-2.6.3\test_single_instance\logs\123.log
journal = true
port = 50000
auth = true
dbpath为数据库文件存储路径;logpath为数据库实例启动、运行、错误日志文件;journal启动数据库实例的日志功能,数据库宕机后重启时依赖它恢复;port数据库实例的服务监听端口;auth启动数据库实例的权限控制功能。其他可选参数可以通过mongod–help查看。
1.8.2 mongo进程
mongo是一个与mongod进程进行交互的JavaScript Shell进程,它提供了一些交互的接口函数用于系统管理员对数据库系统进行管理,如下面命令所示。
>mongo --port 50000–username xxx–password xxx–authenticationDatabase admin
mongo的参数port为mongod进程监听的端口,参数username为连接数据库的用户名,参数password为连接数据库的密码,参数authenticationDatabase为要连接的数据库。上述命令连接成功后,进程就会提供给用户一个JavaScript Shell环境,通过一些函数接口来管理数据库,其他参数可通过mongo--help选项查看。
1.8.3 其他进程
1.mongodump提供了一种从mongod实例上创建BSON dump文件的方法,mongorestore能够利用这些dump文件重建数据库,常用命令格式如下。
mongodump --port 50000 --db eshop --out e:\bak
参数--port表示mongod实例监听端口,--db表示数据库名称,--out表示备份文件保存目录,更多可选参数可通过mongodump–help查看。
2.mongoexport是一个将MongoDB数据库实例中的数据导出来生产JSON或CSV文件的工具,常用命令格式如下。
mongoexport --port 50000 --db eshop --collection goods --out e:\goods.json
3.mongoimport是一个将JSON或CSV文件内容导入到MongoDB实例中的工具,常用命令格式如下。
mongoimport --port 50000 --db eshop --collection goods --file e:\goods.json
4.mongos是一个在分片中用到的进程。所有应用程序端的查询操作都会先由它分析,然后将查询定位到具体某一个分片上,它的作用与mongod类似,客户端的mongo与它连接。
5.mongofiles提供了一个操作MongoDB分布式文件存储系统的命令行接口,常用命令如下。
mongofiles--port 40009 --db mydocs --local D:算法导论学习资料.pdf put algorithm_ introduction.pdf
它表示将本地文件D:算法导论学习资料.pdf上传到数据库mydoc中保存。
6.mongostat提供了一个展示当前正在运行的mongod实例的状态工具,相当于UNIX/Linux上的文件系统工具vmstat,但是它提供的数据只与运行着的mongod或mongos的实例相关。
7.mongotop提供了一个分析MongoDB实例花在读写数据上的时间的跟踪方法。它提供的统计数据在每一个collection(表)级别上。