您的位置:首页 > 数据库 > Mongodb

MongoDB安装和简单配置 Linux-CentOS6

2018-01-05 15:49 561 查看

在哪下载

mongodb官方网站,提供社区版企业版下载。

下面演示在Centos6x64上的安装过程

mongoDB版本:社区版 v3.6

运行平台:
RHEL 6 Linux 64bit


注意 :我使用的是
root
用户做演示,这样可以避免一些权限问题的困扰,这对linux不熟悉的同学来说可以专注MongoDB的学习。

安装过程

1. 下载&解压

可以使用我下面提供的地址直接下载,如果链接失效或者你想尝试其他版本,请移步到官网找到你想要的安装包.

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.6.0.tgz 
tar zxf mongodb-linux-x86_64-rhel62-3.6.0.tgz


2. 准备安装

将mongodb移动到
/usr/local/mongdb
文件夹

mv mongodb-linux-x86_64-rhel62-3.6.0 /usr/local/mongodb


创建数据库目录与日志文件目录

mkdir -p /mongodb/data/db
mkdir -p /mongodb/logs


3. 启动mongodb

进入到mongodb/bin目录启动mongod进程

a) 通过命令行传递启动参数

[root@localhost ~]# cd /usr/local/mongdb/bin
[root@localhost bin]# ./mongod --dbpath=/mongodb/data/db/ --logpath=/mongodb/logs/mongodb.log --logappend --fork


例子中通过命令行指定了
mongod
启动时的参数,
mongod
就是mongodb的服务进程.

--dbpath
指定了数据文件存储的位置,这个目录可以不显示指定,但要保证存在一个
/data/db
目录(默认存储数据目录),并且mongod要对该目录有足够的权限.

--logpath
只sing日志文件存储的目录,默认日志是输出到窗口中的。

--logappend
日志文件末尾添加

--fork
作为守护进程,在后台运行.这个参数只能再Linux平台上使用。

参数还有很多,可以通过
--help
选项来查看可以传递的参数.

[root@localhost bin]# ./mongod --help


b) 通过配置文件传递启动参数

创建配置文件
mongod.conf


[root@localhost bin]# mkdir /mongodb/conf
[root@localhost bin]# vim /mongodb/conf/mongod.conf


将下面的配置写入到
mongod.conf


systemLog:
destination: file
path: "/mongodb/logs/mongodb.log"
logAppend: true

storage:
dbPath: "/mongodb/data/db/"
journal:
enabled: true

processManagement:
fork: true

net:
bindIp: 127.0.0.1
port: 27017


启动
mongod
进程

[root@localhost bin]# ./mongod --config /mongodb/conf/mongod.conf
about to fork child process, waiting until server is ready for connections.
forked process: 5054
child process started successfully, parent exiting


这里使用了
--config
指定了配置文件,也可以使用
-f
来指定配置文件

看到
successfully
就表示已经启动成功了.

4. 检查是否已经启动mongod

a) 查看mongod进程.

[root@localhost bin]# ps aux | grep mongod
root       5054  0.6  2.5 1046200 48632 ?       Sl   11:28   0:02 ./mongod --config /mongodb/conf/mongod.conf


b) 查看监听端口

[root@localhost bin]# netstat -tnpl | grep mongod
tcp        0      0 127.0.0.1:27017             0.0.0.0:*                   LISTEN      5054/./mongod


启动mongod时可能遇到的问题

1. 架构错误

安装包架构和操作系统架构不符,如果在32位的操作系统上运行64位的安装包,会提示下面的错误信息.

./mongod: cannot execute binary file


去下载正确的安装包就好了。

2. dbpath不存在

MongoDB需要一个存储数据的目录,如果目录不存在会报错。我们例子中指定的是
/mongodb/data/db/


3. 端口被占用

如果27017端口被占用了,那肯定启动不了

a) 干掉占用27017端口的进程

查看侦听27017端口的进程PID 然后kill掉该进程

[root@localhost bin]# lsof -i :27017
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mongod  5054 root   11u  IPv4  20211      0t0  TCP localhost:27017 (LISTEN)


b) 修改自己的端口号

将端口改为27018或者其他的数字

./mongod --port=27018


使用客户端连接mongodb

mongodb的客户端有很多种,如果你是再windows平台工作,可视化的客户端可以使用MongoVUE不过MongoVUE官网好像挂了,我更推荐使用robomongo

但是,在学习阶段一定要使用Mongodb安装包中提供的基于JavaScript的shell来操作mongodb

JavaScript shell

cd到mongodb/bin,执行命令
./mongo


[root@localhost bin]# cd /usr/local/mongdb/bin
[root@localhost bin]# ./mongo 192.168.33.132:27017
2017-11-01T17:28:37.620+0800 I STORAGE  [initandlisten]
2017-11-01T17:28:37.620+0800 I STORAGE  [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2017-11-01T17:28:37.620+0800 I STORAGE  [initandlisten] **          See http://dochub.mongodb.org/core/prodnotes-filesystem 2017-11-01T17:28:38.248+0800 I CONTROL  [initandlisten]
2017-11-01T17:28:38.248+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-11-01T17:28:38.248+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2017-11-01T17:28:38.248+0800 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2017-11-01T17:28:38.248+0800 I CONTROL  [initandlisten]
2017-11-01T17:28:38.249+0800 I CONTROL  [initandlisten]
2017-11-01T17:28:38.249+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2017-11-01T17:28:38.249+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2017-11-01T17:28:38.249+0800 I CONTROL  [initandlisten]
2017-11-01T17:28:38.249+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2017-11-01T17:28:38.249+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'


不指定参数时默认链接到
127.0.0.1:27017


上面出现了很多警告,请暂时不要管它。

现在已经成功连接到mongodb了,你可以尝试输入一些命令来做一些操作,比如关闭mongod服务.

查看mongodb中都有哪些库

> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB


使用use命令切换到指定数据

> use admin
switched to db admin


关闭mongodb服务

> db.shutdownServer()
server should be down...


[root@localhost bin]# ps aux | grep mongod
root       5298  0.0  0.0 103328   844 pts/0    S+   12:06   0:00 grep mongod


mongodb已经成功关闭,但最好还是重新启动它,除非你要放弃学习mongodb.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: