mongod 在没有参数的情况下会使用默认数据目录/data/db(在windows下是c:\data\db\),并且使用27017端口,如果数据目录不存在或不可写,端口被占用等情况出现时会导致服务启动失败。mongod还启动一个非常基本的http服务器,监听数字比主端口号高1000的端口,也就是说你可以通过http://localhost:28017来获取数据库的管理信息。
在启动服务器的shell下可以用CTRL+C来完全的停止mongod的运行。
在windows下创建一个mongodb服务,代码如下:
mongod --dbpath "d:\mongotDB\data" --directoryperdb --logpath "d:\mongoDB\log\mongoDBLog.log"
--logappend --journal --install
mongod有很多可配置的启动选项,在命令行中运行mongod -h 可以查看所有选项:
介绍几个常用的
dbpath:指定数据目录:默认是data/db/,每个mongod进程都需要独立的数据目录,所以要是有多个Mongod实例,必须要有多个独立的数据目录,当Mongod启动时,会在数据目录 下创建mongod.lock文件,这个文件用于防止其他mongod进程使用该数据目录,如果使用同一个数据目录启动另一个Mongodb服务器,则会报错:
"unable to acquire lock for lockfilepath /data/db/mongod.lock"
logpath:指定日志输出路径,而不是输出到命令行。
logappend:日志采用追加模式
directoryperdb:每个db存放单独的目录
journal:开启日志功能(还有待研究)
port:指定服务器监听的端口号,默认是27017,web管理端口在此基础上加1000
fork:以守护进程的方式运行MongoDB,创建服务器进程(还有待研究)
config:指定配置文件
auth:开启用户认证
在创建完成MongoDB service之后可以在日志文件中看到如下 信息:
Tue Apr 24 13:38:20 [initandlisten] MongoDB starting : pid=5904 port=27017 dbpath=d:\mongoDB\data 32-bit host=zwx
Tue Apr 24 13:38:20 [initandlisten]
Tue Apr 24 13:38:20 [initandlisten] ** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
Tue Apr 24 13:38:20 [initandlisten] ** see http://blog.mongodb.org/post/137788967/32-bit-limitations
Tue Apr 24 13:38:20 [initandlisten] ** with --journal, the limit is lower
Tue Apr 24 13:38:20 [initandlisten]
Tue Apr 24 13:38:20 [initandlisten] db version v2.0.2, pdfile version 4.5
Tue Apr 24 13:38:20 [initandlisten] git version: 514b122d308928517f5841888ceaa4246a7f18e3
Tue Apr 24 13:38:20 [initandlisten] build info: windows (5, 1, 2600, 2, 'Service Pack 3') BOOST_LIB_VERSION=1_42
Tue Apr 24 13:38:20 [initandlisten] options: { auth: true, dbpath: "d:\mongoDB\data", directoryperdb: true, journal: true, logappend: true, logpath: "d:\mongoDB\log\mongoDBLog.log", service: true }
Tue Apr 24 13:38:20 [initandlisten] journal dir=d:/mongoDB/data/journal
Tue Apr 24 13:38:20 [initandlisten] recover : no journal files present, no recovery needed
Tue Apr 24 13:38:20 [initandlisten] waiting for connections on port 27017
Tue Apr 24 13:38:20 [websvr] admin web console waiting for connections on port 28017
在命令行中运行net start "MongoDB" 可启动Mongodb服务
Ctrl+C可停止MongoDB,另一种比较好的方式就是使用shutdown命令,这是一个管理命令,在要admin数据库下使用,shell提供了辅助函数,来简化这一过程
运行mongo登录到数据库中,执行:
use admin
db.shutdownServer();
每个MongoDB实例中的数据库都可以有许多用户,如果开户了安全性检查,则只有数据库认证的用户才能执行读写操作
也就是说只有在开启Mongodb服务时加了--auth参数时,才对用户进行认证。
use admin
db.addUser("root" ,"123");
{
"user":"root"
"readonly":false
"pwd":"6beed8c02c5d4452e0a4de2ac7ac886c"
}
上面添加了管理员root 密码为123
退出后 在命令行中运行mongo admin -u root -p 123 即可登录。
分享到:
相关推荐
MongoDB 是一种流行的开源、非关系型数据库系统,以其灵活性、高性能和易用性而备受开发者青睐。在本文中,我们将深入探讨 ...在实际项目中,学习和掌握 MongoDB 及其驱动程序能够帮助你更好地应对现代数据存储需求。
mongodb学习笔记资料,从安装到操作库collection 对document的crud 索引 replicaSet sharding 备份与恢复
自己在学习MongoDB的一些笔记,里面有各个查询选择器的使用截图,还有一些索引的介绍。
MongoDB 学习笔记 本文档是 MongoDB 学习笔记,涵盖了 NoSQL、Cache、运行平台等多个方面的知识点。 一、NoSQL 数据库 MongoDB MongoDB 是一个强大、灵活、可扩展性好的文档数据存储器,可以完成大部分关系数据库...
本篇学习笔记将从基础操作到高级功能,详细阐述MongoDB的关键知识点。 首先,MongoDB的基本单元是集合(collection),类似于关系型数据库中的表,而集合中的元素称为文档(document),文档是键值对的集合,类似于...
mongodb学习笔记 MongoDB 是一个基于分布式文件存储的开源数据库系统,主要用于处理大量数据的存储和查询。以下是 MongoDB 的一些基本操作和技巧: 插入文档 MongoDB 中可以使用 `insert` 方法来插入文档,例如 ...
首先,`mongodb_and_python`学习笔记可能涵盖了如何使用Python编程语言与MongoDB进行交互。Python是常见的MongoDB驱动程序之一,通过PyMongo库,开发者可以方便地执行CRUD(创建、读取、更新、删除)操作,构建复杂...
总结的MongoDB的学习笔记,基本上包括了MongoDB的方方面面,每个知识点,都有示例代码,有需要的朋友,可以下载下来进一步补充完善。
本压缩包“mongoDB学习笔记及工具.zip”包含了一些资源,帮助你深入理解和掌握MongoDB的相关知识。 1. **笔记(note.txt)**: 这个文件可能是对MongoDB的基础概念、安装过程、基本操作和进阶特性的详细记录。笔记...
MongoDB是一种流行的NoSQL数据库,它的索引机制与传统的关系型数据库类似,旨在提升查询和排序的速度。在MongoDB中,索引对于优化查询性能至关重要,尤其在处理大量数据时。下面将详细介绍MongoDB中不同类型的索引...
### MongoDB 学习笔记知识点详解 #### 一、MongoDB 命令行基础操作 **1.1 帮助命令** - **help**:显示 MongoDB shell 的基本帮助信息。 - **db.help()**:提供当前数据库的帮助信息。 - **db.mycoll.help()**:...
MongoDB的GridFS是一个强大的文件存储系统,专为在数据库中存储和检索大量小文件而设计。GridFS将文件拆分为多个数据块(chunk),每个块都有自己的文档存储在`fs.chunks`集合中,而文件元信息则保存在`fs.files`集合...
以下是对MongoDB学习的一些关键知识点的详细解释: 1. **MongoDB的基本概念**:MongoDB以集合(Collections)的形式存储数据,集合相当于关系型数据库中的表。集合内包含文档(Documents),文档是JSON格式的数据...
MongoDB最详细学习笔记