设为首页 收藏本站
查看: 1741|回复: 0

[经验分享] mongodb安装

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-7-22 09:17:08 | 显示全部楼层 |阅读模式
## 讲诉mongodb的两种安装方式,其实都蛮简单的
  • 建议使用官方源进行安装
  • 数据库存放目录建议划分到一个单独的分区上面


## monogdb二进制安装包
1
2
3
4
5
6
7
8
9
10
[iyunv@redis tmp]# tar xf mongodb-linux-x86_64-2.6.3.tgz -C /usr/local/
[iyunv@redis tmp]# mv /usr/local/{mongodb-linux-x86_64-2.6.3,mongodb}
[iyunv@redis tmp]# cd /usr/local/mongodb/
[iyunv@redis mongodb]# ls
bin  GNU-AGPL-3.0  README  THIRD-PARTY-NOTICES
[iyunv@redis mongodb]# mkdir -pv /mongo/data/{mongodb_data,mongodb_log}
mkdir: created directory `/mongo'
mkdir: created directory `/mongo/data'
mkdir: created directory `/mongo/data/mongodb_data'
mkdir: created directory `/mongo/data/mongodb_log'




### 启动mongodb
1
2
3
[iyunv@redis mongodb]# /usr/local/mongodb/bin/mongod --port 27017 --fork --dbpath=/mongo/data/mongodb_data/ --logpath=/mongo/data/mongodb_log/mongodb.log --logappend
about to fork child process, waiting until server is ready for connections.
forked process: 2828




### 验证存活情况:
1
2
3
[iyunv@redis mongodb]# ss -tunlp
Netid  Recv-Q Send-Q                                     Local Address:Port                                       Peer Address:Port
tcp    0      128                                                    *:27017                                                 *:*      users:(("mongod",2828,8))




### 添加配置文件
1
2
3
4
5
6
7
8
9
10
11
[iyunv@redis mongodb]# vim /etc/mongod.conf
[iyunv@redis mongodb]# cat /etc/mongod.conf
port=27017
dbpath=/mongo/data/mongodb_data/
logpath=/mongo/data/mongodb_log/mongodb.log
pidfilepath=/usr/local/mongodb/mongo.pid
fork=true
logappend=true
shardsvr=true
directoryperdb=true
[iyunv@redis mongodb]#




### 关闭和启动mongodb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
[iyunv@redis mongodb]# /usr/local/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.shutdownServer()"
MongoDB shell version: 2.6.3
connecting to: 127.0.0.1:27017/admin
2014-07-19T13:04:27.469+0200 DBClientCursor::init call() failed
server should be down...
[iyunv@redis mongodb]# ss -tunlp
Netid  Recv-Q Send-Q                                     Local Address:Port                                       Peer Address:Port
tcp    0      128                                                   :::44938                                                :::*      users:(("rpc.statd",1078,11))
tcp    0      128                                                    *:44943                                                 *:*      users:(("rpc.statd",1078,9))
tcp    0      128                                                   :::111                                                  :::*      users:(("rpcbind",1060,11))
tcp    0      128                                                    *:111                                                   *:*      users:(("rpcbind",1060,8))
tcp    0      128                                                   :::22                                                   :::*      users:(("sshd",1253,4))
tcp    0      128                                                    *:22                                                    *:*      users:(("sshd",1253,3))
[iyunv@redis mongodb]#




### 重启启动mongodb
1
2
3
4
5
6
7
[iyunv@redis mongodb]# /usr/local/mongodb/bin/mongod --config /etc/mongod.conf
about to fork child process, waiting until server is ready for connections.
forked process: 2855
child process started successfully, parent exiting
[iyunv@redis mongodb]# ss -tunlp
Netid  Recv-Q Send-Q                                     Local Address:Port                                       Peer Address:Port
tcp    0      128                                                    *:27017                                                 *:*      users:(("mongod",2855,8))




### 为mongodb添加Synv服务
  • 添加账户

1
2
3
4
5
[iyunv@redis ~]# groupadd -r  mongodb
[iyunv@redis ~]# useradd -r -g mongodb mongodb
[iyunv@redis ~]# id mongodb
uid=498(mongodb) gid=498(mongodb) groups=498(mongodb)
[iyunv@redis ~]#




### 修改mongodb数据库目录的属组属主
1
2
[iyunv@redis ~]# chown -R mongodb.mongodb /mongo/data/
[iyunv@redis ~]#




### 添加init配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#!/bin/bash
# mongod - Startup script for mongod
# chkconfig: 35 85 15
# description: Mongo is a scalable, document-oriented database.
# processname: mongod
# config: /etc/mongod.conf
# pidfile: /usr/local/mongodb/mongo.pid
. /etc/rc.d/init.d/functions
# things from mongod.conf get there by mongod reading it
# NOTE: if you change any OPTIONS here, you get what you pay for:
# this script assumes all options are in the config file.
CONFIGFILE="/etc/mongod.conf"
OPTIONS=" -f $CONFIGFILE"
#SYSCONFIG="/etc/sysconfig/mongod"
# FIXME: 1.9.x has a --shutdown flag that parses the config file and
# shuts down the correct running pid, but that's unavailable in 1.8
# for now.  This can go away when this script stops supporting 1.8.
DBPATH=`awk -F= '/^dbpath[[:blank:]]*=[[:blank:]]*/{print $2}' "$CONFIGFILE"`
PIDFILE=`awk -F= '/^pidfilepath[[:blank:]]*=[[:blank:]]*/{print $2}' "$CONFIGFILE"`
mongod=${MONGOD-/usr/local/mongodb/bin/mongod}
MONGO_USER=mongodb
MONGO_GROUP=mongodb
if [ -f "$SYSCONFIG" ]; then
    . "$SYSCONFIG"
fi
# Handle NUMA access to CPUs (SERVER-3574)
# This verifies the existence of numactl as well as testing that the command works
NUMACTL_ARGS="--interleave=all"
if which numactl >/dev/null 2>/dev/null && numactl $NUMACTL_ARGS ls / >/dev/null 2>/dev/null
then
    NUMACTL="numactl $NUMACTL_ARGS"
else
    NUMACTL=""
fi
start()
{
  # Recommended ulimit values for mongod or mongos
  # See http://docs.mongodb.org/manual/r ... ecommended-settings
  #
  ulimit -f unlimited
  ulimit -t unlimited
  ulimit -v unlimited
  ulimit -n 64000
  ulimit -m unlimited
  ulimit -u 32000
  echo -n $"Starting mongod: "
  daemon --user "$MONGO_USER" "$NUMACTL $mongod $OPTIONS >/dev/null 2>&1"
  RETVAL=$?
  echo
  [ $RETVAL -eq 0 ] && touch /var/lock/subsys/mongod
}
stop()
{
  echo -n $"Stopping mongod: "
  killproc -p "$PIDFILE" -d 300 /usr/bin/mongod
  RETVAL=$?
  echo
  [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/mongod
}
restart () {
stop
start
}
RETVAL=0
case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  restart|reload|force-reload)
    restart
    ;;
  condrestart)
    [ -f /var/lock/subsys/mongod ] && restart || :
    ;;
  status)
    status $mongod
    RETVAL=$?
    ;;
  *)
    echo "Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"
    RETVAL=1
esac
exit $RETVAL




### 重新启动mongodb




## mongodbrpm包安装


### 添加官方的repo
1
2
3
4
5
6
vim /etc/yum.repos.d/monogdb.repo
[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1



    spacer.jpg

### 安装mongodb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
[iyunv@mongo1 ~]# yum list mongo*
Loaded plugins: fastestmirror, presto
Loading mirror speeds from cached hostfile
* base: mirrors.btte.net
* extras: mirrors.btte.net
* updates: mirrors.btte.net
Available Packages
mongo-10gen.x86_64                                                      2.4.10-mongodb_1                                       mongodb
mongo-10gen-server.x86_64                                               2.4.10-mongodb_1                                       mongodb
mongo-10gen-unstable.x86_64                                             2.5.2-mongodb_1                                        mongodb
mongo-10gen-unstable-mongos.x86_64                                      2.5.2-mongodb_1                                        mongodb
mongo-10gen-unstable-server.x86_64                                      2.5.2-mongodb_1                                        mongodb
mongo-10gen-unstable-shell.x86_64                                       2.5.2-mongodb_1                                        mongodb
mongo-10gen-unstable-tools.x86_64                                       2.5.2-mongodb_1                                        mongodb
mongo18-10gen.x86_64                                                    1.8.5-mongodb_1                                        mongodb
mongo18-10gen-server.x86_64                                             1.8.5-mongodb_1                                        mongodb
mongo20-10gen.x86_64                                                    2.0.8-mongodb_1                                        mongodb
mongo20-10gen-server.x86_64                                             2.0.8-mongodb_1                                        mongodb
mongodb-mms-backup-agent.x86_64                                         2.0.0.97-1                                             mongodb
mongodb-org.x86_64                                                      2.6.3-1                                                mongodb
mongodb-org-mongos.x86_64                                               2.6.3-1                                                mongodb
mongodb-org-server.x86_64                                               2.6.3-1                                                mongodb
mongodb-org-shell.x86_64                                                2.6.3-1                                                mongodb
mongodb-org-tools.x86_64                                                2.6.3-1                                                mongodb
mongodb-org-unstable.x86_64                                             2.7.3-1                                                mongodb
mongodb-org-unstable-mongos.x86_64                                      2.7.3-1                                                mongodb
mongodb-org-unstable-server.x86_64                                      2.7.3-1                                                mongodb
mongodb-org-unstable-shell.x86_64                                       2.7.3-1                                                mongodb
mongodb-org-unstable-tools.x86_64                                       2.7.3-1                                                mongodb
[iyunv@mongo1 ~]#
[iyunv@mongo1 ~]# yum install mongo-10gen.x86_64 mongo-10gen-server.x86_64 -y




### 创建数据库目录
  • 数据库存放目录的属主属组要和安装mongodb生成的账户一致

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
[iyunv@mongo1 ~]#
[iyunv@mongo1 ~]# mkdir /mongo/data
mkdir: cannot create directory `/mongo/data': No such file or directory
[iyunv@mongo1 ~]# mkdir /mongo/data -pv
mkdir: created directory `/mongo'
mkdir: created directory `/mongo/data'
[iyunv@mongo1 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
rpc:x:32:32:Rpcbind Daemon:/var/cache/rpcbind:/sbin/nologin
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
vagrant:x:500:500::/home/vagrant:/bin/bash
puppet:x:52:52:Puppet:/var/lib/puppet:/sbin/nologin
vboxadd:x:499:1::/var/run/vboxadd:/bin/false
mongod:x:498:498:mongod:/var/lib/mongo:/bin/false
[iyunv@mongo1 ~]# chown -R mongod.mongod /mongo/data




### 修改配置文件
1
2
3
4
5
6
7
8
[iyunv@mongo1 ~]# sed -e '/^#/d;/^$/d' /etc/mongod.conf
logpath=/var/log/mongodb/mongod.log
logappend=true
fork=true
dbpath=/mongo/data
pidfilepath=/var/run/mongodb/mongod.pid
bind_ip=127.0.0.1
[iyunv@mongo1 ~]#




### 将mongodb服务器添加到服务项并启动服务
1
2
3
4
5
[iyunv@mongo1 ~]# chkconfig --add mongod
[iyunv@mongo1 ~]# chkconfig mongod on
[iyunv@mongo1 ~]# service mongod start
Starting mongod:                                           [  OK  ]
[iyunv@mongo1 ~]#



### 验证存活情况
1
2
3
4
5
6
7
8
9
10
11
12
13
[iyunv@mongo1 ~]# mongo
MongoDB shell version: 2.6.3
connecting to: test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
> show dbs;
admin  (empty)
local  0.078GB
>




接下来是mongodb的CRUD的讲诉~


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-22482-1-1.html 上篇帖子: monogdb之数据备份恢复与数据的导入导出 下篇帖子: pomelo+mongodb配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表