1. 官网下载对应版本的mongodb,下载地址 https://www.mongodb.org/downloads#production
  2. 通过FileZilla将刚下载的安装包mongodb-linux-x86_64-rhel62-3.2.4.gz上传到测试服务器的/tmp目录下,
    a) 执行命令tar –zxvf mongodb-linux-x86_64-rhel62-3.2.4.gz解压到当前目录下(/tmp)
  3. 执行如下命令复制文件夹到/usr/local/mongodb目录
# cp -r  mongodb-linux-x86_64-rhel62-3.2.4 /usr/local/mongodb

4、 MongoDB 的可执行文件位于 bin 目录下,所以可以将其添加到 PATH 路径中
执行命令# vim /etc/profile并添加

#set mongodb command 
export PATH=/usr/local/mongodb/bin:$PATH

执行如下命令使配置生效

# source /etc/profile

5、 创建数据库目录,目录为/data/mongodb

# cd /data
# mkdir mongodb

6.、启动mongodb,这里指定数据库目录选项为/data/mongodb

# mongod --dbpath /data/mongodb

看到如下图提示则启动成了!
这里写图片描述

7、 配置mongodb,执行如下命令,

# vi /usr/local/mongodb/mongodb.conf

并将下面配置复制进去

port=27017 #端口号

dbpath=/data/mongodb/ #数据库路径
rest=true #设置后打开28017网页端口
logpath=/data/mongodb/mongodb_log/mongodb.log #日志输出文件路径

pidfilepath=/usr/local/mongodb/mongo.pid

fork=true #设置后台运行

logappend=true #日志输出方式

shardsvr=true

#directoryperdb=true

#auth=true  #开启认证

8、 添加mongodb为系统服务,并设置开机启动
a) 添加mongodb系统服务

# vim /etc/rc.d/init.d/mongod

将下面配置粘贴进去,保存

ulimit -SHn 655350

#!/bin/sh

# chkconfig: - 64 36

# description:mongod

case $1 in

start)

/usr/local/mongodb/bin/mongod  --maxConns 20000  --config /usr/local/mongodb/mongodb.conf

;;

stop)

/usr/local/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.shutdownServer()"

;;

status)

/usr/local/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.stats()"

;;

Esac

· b) 添加脚本执行权限

# chmod +x /etc/rc.d/init.d/mongod 

· C) 设置开机启动

    # chkconfig mongod on

· d)启动mongodb,如下图启动成功。
这里写图片描述
9.、设置远程访问,即对外开发端口27017,28017
· MongoDB 的 Web 界面访问端口比服务的端口多1000。
· 如果你的MongoDB运行端口使用默认的27017,你可以在端口号为28017访问web用户界面。
· a) 编辑iptables文件

# vim /etc/sysconfig/iptables

· 增加如下内容:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 27017 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 28017 -j ACCEPT

b) 重启iptables服务

# service iptables restart

· c)通过浏览器访问mongodb web用户界面
这里写图片描述
· 10. 分配用户
a)mongodb是没有默认管理员账号,所以要先添加管理员账号,在开启权限认证。
b)切换到admin数据库,添加的账号才是管理员账号。
c)用户只能在用户所在数据库登录,包括管理员账号。
d) 管理员可以管理所有数据库,但是不能直接管理其他数据库,要先在admin数据库认证后才可以。这一点比较怪
执行如下命令添加用户

> use admin
> db.createUser({user:"ytadmin",pwd:"123456",roles:["readWrite","dbAdmin"]});

要在登录时使用用户名,还要修改配置文件

vim /usr/local/mongodb/mongodb.conf

把auth=true前面的#去掉,重启mongodb
再直接执行命令时就提示用户名认证了

> show dbs
2016-04-08T15:52:54.649+0800 E QUERY    [thread1] Error: listDatabases failed:{
    "ok" : 0,
    "errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }",
    "code" : 13
} :

认证:

> use admin
switched to db admin
> db.auth("ytadmin","123456");
1
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐