mongodb的基本概念

mongodb的基本概念,第1张

(1)文档
文档是 MongoDB 中数据的基本单位,类似于关系数据库中的行(但是比行复杂)。多个键及其关联的值有序地放在一起就构成了文档。不同的编程语言对文档的表示方法不同,在JavaScript 中文档表示为:
{“greeting”:“hello,world”}
这个文档只有一个键“greeting”,对应的值为“hello,world”。多数情况下,文档比这个更复杂,它包含多个键/值对。例如:
{“greeting”:“hello,world”,“foo”: 3}
文档中的键/值对是有序的,下面的文档与上面的文档是完全不同的两个文档。
{“foo”: 3 ,“greeting”:“hello,world”}
文档中的值不仅可以是双引号中的字符串,也可以是其他的数据类型,例如,整型、布尔型等,也可以是另外一个文档,即文档可以嵌套。文档中的键类型只能是字符串。
(2)集合
集合就是一组文档,类似于关系数据库中的表。集合是无模式的,集合中的文档可以是各式各样的。例如,{“hello,word”:“Mike”}和{“foo”: 3},它们的键不同,值的类型也不同,但是它们可以存放在同一个集合中,也就是不同模式的文档都可以放在同一个集合中。既然集合中可以存放任何类型的文档,那么为什么还需要使用多个集合?这是因为所有文档都放在同一个集合中,无论对于开发者还是管理员,都很难对集合进行管理,而且这种情形下,对集合的查询等 *** 作效率都不高。所以在实际使用中,往往将文档分类存放在不同的集合中,例如,对于网站的日志记录,可以根据日志的级别进行存储,Info级别日志存放在Info 集合中,Debug 级别日志存放在Debug 集合中,这样既方便了管理,也提供了查询性能。但是需要注意的是,这种对文档进行划分来分别存储并不是MongoDB 的强制要求,用户可以灵活选择。
可以使用“”按照命名空间将集合划分为子集合。例如,对于一个博客系统,可能包括bloguser 和blogarticle 两个子集合,这样划分只是让组织结构更好一些,blog 集合和bloguser、blogarticle 没有任何关系。虽然子集合没有任何特殊的地方,但是使用子集合组织数据结构清晰,这也是MongoDB 推荐的方法。
(3)数据库
MongoDB 中多个文档组成集合,多个集合组成数据库。一个MongoDB 实例可以承载多个数据库。它们之间可以看作相互独立,每个数据库都有独立的权限控制。在磁盘上,不同的数据库存放在不同的文件中。MongoDB 中存在以下系统数据库。
● Admin 数据库:一个权限数据库,如果创建用户的时候将该用户添加到admin 数据库中,那么该用户就自动继承了所有数据库的权限。
● Local 数据库:这个数据库永远不会被负责,可以用来存储本地单台服务器的任意集合。
● Config 数据库:当MongoDB 使用分片模式时,config 数据库在内部使用,用于保存分片的信息。

安装软件库
第一步是添加MongoDB软件库。为此,你必须导入MongoDB公共密钥。步骤如下:
1 打开终端容器。
2 执行命令sudo apt-key adv —keyserver hkp://keyserverubuntucom:80 —recv EA312927。
3 执行命令sudo touch /etc/apt/sourceslistd/mongodb-orglist。
4 执行命令sudo nano /etc/apt-sourceslistd/mongodb-orglist。
5 将下面其中一行(视你的版本而定)拷贝粘贴到打开的文件。
For 1204: deb >MongoDB是目前非常流行的一种NoSQL数据库,其灵活的存储方式备受开发人员青睐。本文就介绍一下如何安装并设置成Windows服务的方法。
1、安装MongoDB
Windows版本的MongoDB无需安装,只要解压就能使用了。
2、将MongoDB设置成Windows服务
这个 *** 作就是为了方便,每次开机MongoDB就自动启动了。
首先在解压后的MongoDB文件夹里面建立data和logs两个目录,看名字就知道,data存放数据,logs存放日志文件。
然后建立文本文件:mongodcfg
里面写上(注意,里面的路径要根据你的MongoDB实际路径):
logpath=E: oolsmongodb-win32-i386-264logsMongoDBlog
dbpath=E: oolsmongodb-win32-i386-264data
然后在命令行里面运行:
mongod --config E: oolsmongodb-win32-i386-264mongodcfg --install
这样就在Windows下成功建立了MongoDB的服务。
在“运行”中输入“servicesmsc”,打开“服务”管理界面。
点击列表中的“MongoDB”,在点击“启动”按钮,就将MongoDB成功启动了。

1、基于mongo实现远程连接
[plain] view plaincopy
mongo -u admin -p admin 1921680197:27017/pagedb
通过mongo实现连接,可以非常灵活的选择参数选项,参看命令帮助,如下所示:
[plain] view plaincopy
mongo --help
MongoDB shell version: 183
usage: mongo [options] [db address] [file names (ending in js)]
db address can be:
foo foo database on local machine
19216905/foo foo database on 19216805 machine
19216905:9999/foo foo database on 19216805 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连接到1921680184),现在想要在这个会话中连接另一个远程的数据库服务器(1921680197),可以执行如下命令:
[plain] view plaincopy
> var x = new Mongo('1921680197:27017')
> var ydb = xgetDB('pagedb');
> use ydb
switched to db ydb
> db
ydb
> ydbpagefindOne()
{
"_id" : ObjectId("4eded6a5bf3bfa0014000003"),
"content" : "巴黎是浪漫的城市,可是",
"pubdate" : "2006-03-19",
"title" : "巴黎:从布鲁塞尔赶到巴黎",
"url" : ">

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13421616.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-02
下一篇 2023-08-02

发表评论

登录后才能评论

评论列表(0条)

保存