引子
随着技术的发展,大数据的流行,高并发的出现,出现了越来越多的非关系型数据库,mongodb就是其中的一款. mongodb采用文档式存储结构,存取读写速度快,存取方便,被大多数互联网公司推荐使用.
工具
这里我们以linux系统为例子,来演示怎样搭建mongodb环境, 我们使用CentOS 32位系统,需要用到如下工具
winscp :用来向linux服务器上传文件,这里我们用来把mongodb安装包上传到linux服务器
下载地址 https://yunpan.cn/cvXpTZGMZcbGP 访问密码 394b
SecureCRTPortable :一个命令行工具,可以连接linux服务器,在windows系统上远程执行命令操作linux服务器
mongodb下载地址:https://www.mongodb.com/download-center?jmp=nav#community
环境搭建
首先使用winscp连接linux服务器,把下载的mongodb-linux-i686-3.2.10.gz文件上传到linux服务器下的 /usr/local目录下
使用SecureCRTPortable.exe连接linux服务器,切换到 usr/local目录下解压mongodb-linux-i686-3.2.10.gz文件
切换到local目录命令
cd /usr/local
解压mongodb-linux-i686-3.2.10.gz文件
tar -zxvf mongodb-linux-i686-3.2.10.gz
解压成功后,看到local目录下新生成了 mongodb-linux-i686-3.2.10目录
切换到 mongodb-linux-i686-3.2.10目录下,创建db和logs目录
mkdir db
mkdir logs
[root@localhost local]# cd mongodb-linux-i686-3.2.10
[root@localhost mongodb-linux-i686-3.2.10]# mkdir db
[root@localhost mongodb-linux-i686-3.2.10]# mkdir logs
[root@localhost mongodb-linux-i686-3.2.10]# ls
bin db GNU-AGPL-3.0 logs MPL-2 README THIRD-PARTY-NOTICES
切换到bin目录下,创建mongodb.conf文件,使用vim命令
[root@localhost mongodb-linux-i686-3.2.10]# cd bin/
[root@localhost bin]# vim mongodb.conf
修改mongodb.conf内容如下
storageEngine=mmapv1
dbpath=/usr/local/mongodb-linux-i686-3.2.10/db
logpath=/usr/local/mongodb-linux-i686-3.2.10/logs/mongodb.log
port=27017
fork=true
nohttpinterface=true
保存后,启动mongodb服务,
./mongod --config ./mongodb.conf
连接mongodb数据库,命令如下
./mongo
[root@localhost bin]# ./mongo
MongoDB shell version: 3.2.10
connecting to: test
注:
1.搭建过程中如果出现如下错误,是因为mongodb.conf文件中没有设置 storageEngine=mmapv1, mmapv1是mongodb的数据存储引擎
2016-10-19T22:53:14.203-0700 I CONTROL [main]
2016-10-19T22:53:14.203-0700 W CONTROL [main] 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability.
2016-10-19T22:53:14.203-0700 I CONTROL [main]
about to fork child process, waiting until server is ready for connections.
forked process: 2624
ERROR: child process failed, exited with error number 100
2.查看mongodb进程命令
ps -ef | grep mongo
[root@localhost bin]# ps -ef | grep mongo
root 3550 1 0 00:18 ? 00:00:03 ./mongod --config ./mongodb.conf
root 3656 2599 0 00:25 pts/1 00:00:00 grep mongo