centos mongodb?mongodb怎么用

大家好,关于centos mongodb很多朋友都还不太明白,今天小编就来为大家分享关于mongodb怎么用的知识,希望对各位有所帮助!

CentOS上MongoDB的这个Warning是什么意思

linux下面安装mongodb其实很简单,你按照官网安装步骤就可以了。我之前文章中也清楚的写明白了。大家可以看一下!这里稍微解释一下!首先下载mongodb,可以用curl-Omond关闭mongodb有开启就有关闭,上面方法会永久开启mongodb,那么如何关闭其运行呢?1、普通命令$./mongod>useadmin>db.shutdownServer()

2、如果没有up-to-date从Mongodb且你想强制关闭服务,可以通过添加force:true;命令如下>db.adminCommand({shutdown:1,force:true})>//or>db.shutdownServer({force:true})3、指定特定超时时间的关闭服务器,命令同上,另外加上一个timeoutsec:参数>db.adminCommand(shutdown:1,force:true,timeoutsec:5)>//or>db.shutdownServer({force:true,timeoutsec:5})

Linux Centos 7安装MongoDB(简单!详细!)

Linux CentOS 7安装MongoDB指南

为了简化安装流程,我们可以使用Yum源安装MongoDB。以下为几个常用的步骤:

在Linux CentOS 7中,创建一个.repo文件来生成MongoDB的源,添加以下配置信息来确保能够获取MongoDB的最新版本。

详细步骤如下:

1.使用Yum安装MongoDB,执行如下命令进行安装:

执行以下命令来验证MongoDB安装是否成功:

启动MongoDB服务,并检查默认端口是否为27017,以及数据库是否已成功安装。

在安装MongoDB后,我们可以通过以下步骤来配置数据库的连接设置,确保其可以远程访问:

修改配置文件mongodb.conf,将绑定IP从默认的127.0.0.1更改为0.0.0.0,以允许远程连接,然后重启mongodb服务。

开放对外端口,确保MongoDB服务可以正常接收远程连接请求。这里提供两种方法:

完成以上步骤后,我们可以通过以下命令远程连接MongoDB:

默认情况下,MongoDB使用admin数据库中的root用户作为超级账号。其他权限角色包括读、读写、dbAdmin、userAdmin等,具体说明如下:

root:仅在admin数据库中可用,拥有超级账号权限。

Read:允许用户读取指定数据库。

ReadWrite:允许用户读写指定数据库。

dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile。

userAdmin:允许用户向system.users集合写入,用于创建、删除和管理用户。

clusterAdmin:仅在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。

readAnyDatabase:仅在admin数据库中可用,赋予用户所有数据库的读权限。

readWriteAnyDatabase:仅在admin数据库中可用,赋予用户所有数据库的读写权限。

userAdminAnyDatabase:仅在admin数据库中可用,赋予用户所有数据库的userAdmin权限。

dbAdminAnyDatabase:仅在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。

为什么PostgreSQL比MongoDB还快

PostgreSQL9.4带来了全新的NoSQL特性,并且根据EnterpriseDB的测试,其加载,插入和查询的性能都已经几倍于MongoDB了。

虽然我是PG的铁杆粉丝,但是关系数据库背负了ACID的重型装甲,在性能上居然能打败轻装上阵的NoSQL数据库总觉得有点离谱。

所以我在自己的环境里验证了一下EnterpriseDB的测试结果,并且小探一下PG取胜的原因。

1. EnterpriseDB的测试结果

以下是EnterpriseDB的测试结果(数据量为5000万)

(还可以参考这篇译文: )

2.我的验证结果

测试观点

为了使测试结果更加单纯,我准备单纯比拼CPU消耗(尽量排除IO和网络的干扰),设定以下测试条件。

1)所有数据都要放进内存

2)C/S都跑在同一台单机上

所以,只在单机上进行10万条小数据量的测试。

注)EnterpriseDB的测试环境是32G内存的Amazon Web Services M3.2XLARGE实例,总数据量超过内存了。

测试环境

测试环境为个人PC上的VMware虚拟机

PC

CPU:Intel Core i5-3470 3.2G(4核)

MEM:6GB

SSD:OCZ-VERTEX4 128GB(VMware虚拟机所在磁盘,非系统盘)

OS:Win7

VMware虚拟机

CPU:4核

MEM:1GB

OS:CentOS 6.5

PG:PostgreSQL 9.4.0(shared_buffers= 428MB,其他是默认值)

MG:MongoDB 3.0.2

测试步骤

测试步骤非常简单,可以参考:

但是,在测试前,有些东西要改。

1)把数据量减小到10万

pg_nosql_benchmark-master/pg_nosql_benchmark:

declare-a json_rows=(10000000)

==>

declare-a json_rows=(100000)

2)修改mongo的一处脚本(注)

pg_nosql_benchmark-master/lib/mongo_func_lib.sh:

collectionsize="$(echo${output}|awk-F","'{print$5}'|cut-d":"-f2)"

==>

collectionsize="$(echo${output}|awk-F","'{print$6}'|cut-d":"-f2)"

注)pg_nosql_benchmark原来是基于MongoDB 2.6设计的,MongoDB 3.0的db.json_tables.stats()输出可能变了,所以这边要修改一下。

阅读剩余
THE END