`

CentOS 6.6下安装mongodb (2进制)

阅读更多

原文:http://blog.csdn.net/ligaofeng/article/details/44416765 

 

1、下载mongodb因为64位系统CentOS,所以下载64位的安装包:

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.2.tgz

 

2、安装MongoDB(安装到/usr/local)

tar -zxvf mongodb-linux-x86_64-3.0.2.tgz 在/usr/local目录下将安装包解压;

修改解压后的目录:

mv  mongodb-linux-x86_64-3.0.2  mongodb3.0.2

 

3、在mongodb3.0.2目录下的bin目录中创建mongodb.conf文件:

    dbpath=/home/mongodb-data/db         #数据文件存放目录,一般放在安装文件目录下bin目录中;

    logpath=/home/mongodb-data/logs/mongodb.log      #日志文件目录,一般安装目录下bin目录

    port=27017                     #端口默认

    fork=true                         # 以守护进程的方式运行MongoDB,创建服务器进程 

    nohttpinterface=true      # 关闭http接口,默认关闭27018端口访问

    maxConns=5000               #最大同时连接数 默认2000
    bind_ip=127.0.0.1,172.16.20.126        #只允许局域网IP:172.16.20.126本机访问,多个IP逗号分隔
    noauth=true #不启用验证

   

 注意:必须在启动前创建 db和logs 的目录

重新绑定mongodb的配置文件地址和访问IP:

/usr/local/mongodb3.0.2/bin/mongod --bind_ip localhost -f /usr/local/mongodb3.0.2/bin/mongodb.conf

 

如果想直接使用mongo命令则要确保MongoDB的bin目录包含在PATH环境变量中。

或者初级符号连接到/usr/local/bin目录。
$ sudo vi /etc/profile
添加下面的内容:
export PATH=$PATH:/home/chuser/mongodb/bin
让环境变量生效:
$ source /etc/profile
验证环境变量是否生效:
$ mongod -version

db version v3.0.2

git version: 6201872043ecbbc0a4cc169b5482dcf385fc464f

 

 

4、启动Mongo程序,使用配置文件mongodb.conf定义的参数启动 

/usr/local/mongodb3.0.2/bin/mongod   --config  /usr/local/mongodb3.0.2/bin/mongodb.conf

或则直接在/usr/local/mongodb3.0.2/bin/目录下:

    ./mongod   --config  mongodb.conf

OK,已经成功!弹出的界面如下:

[root@centos bin]# ./mongo

MongoDB shell version: 3.0.2

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

Server has startup warnings: 

2015-04-29T12:36:41.274+0800 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.

2015-04-29T12:36:41.274+0800 I CONTROL  [initandlisten] 

2015-04-29T12:36:41.274+0800 I CONTROL  [initandlisten] 

2015-04-29T12:36:41.274+0800 I CONTROL  [initandlisten] ** WARNING: You are running on a NUMA machine.

2015-04-29T12:36:41.274+0800 I CONTROL  [initandlisten] **          We suggest launching mongod like this to avoid performance problems:

2015-04-29T12:36:41.274+0800 I CONTROL  [initandlisten] **              numactl --interleave=all mongod [other options]

2015-04-29T12:36:41.275+0800 I CONTROL  [initandlisten] 

2015-04-29T12:36:41.275+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.

2015-04-29T12:36:41.275+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'

2015-04-29T12:36:41.275+0800 I CONTROL  [initandlisten] 

2015-04-29T12:36:41.275+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.

2015-04-29T12:36:41.275+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'

 

2015-04-29T12:36:41.275+0800 I CONTROL  [initandlisten] 

 

 上边,有警告,一是不能用root启动,二是要修改最大连接数

 

开机自动启动mongodb :

vim   /etc/rc.d/rc.local

在文件中添加如下内容:

/usr/local/mongodb3.0.2/bin/mongod   --config  /usr/local/mongodb3.0.2/bin/mongodb.conf

 

注意:可以用killall mongod  来停止mongodb服务;但是不能用kill -9 来停止,会损坏服务器;还可以用如下命令来查看PID 在用kill -2 PID停止服务

方式1:

 # ps aux | grep mongod

 # kill  -2 PID

 

方式2:登陆mongodb,use admin 数据库后,命令行运行如下命令停止:

db.shutdownServer();

 

注意:默认mongodb的数据目录对应的是/data/db下面。日志目录对于到/data/logs/mongodb.log,如果是目录结构有调整需要重新指定配置的路径;在Linux平台下,无论是64位或者32位的MongoDB默认最大连接数都是819。

 

http://21jhf.iteye.com/blog/2216103   mongodb3.0版本以后的认证方式。

处理步骤:

 1、非认证授权方式登陆mongodb,进入admin数据库;

[root@ServIProVM01 ~]# mongo

MongoDB shell version: 3.0.2

connecting to: test

Server has startup warnings: 

2015-10-18T15:20:11.442+0000 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.

2015-10-18T15:20:11.442+0000 I CONTROL  [initandlisten] 

2015-10-18T15:20:11.442+0000 I CONTROL  [initandlisten] 

2015-10-18T15:20:11.442+0000 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.

2015-10-18T15:20:11.443+0000 I CONTROL  [initandlisten] **        We suggest setting it to 'never'

2015-10-18T15:20:11.443+0000 I CONTROL  [initandlisten] 

2015-10-18T15:20:11.443+0000 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.

2015-10-18T15:20:11.443+0000 I CONTROL  [initandlisten] **        We suggest setting it to 'never'

2015-10-18T15:20:11.443+0000 I CONTROL  [initandlisten] 

> use admin;

switched to db admin 

 

2、

> var schema = db.system.version.findOne({"_id" : "authSchema"});

> schema.currentVersion = 3

3

> db.system.version.save(schema);

WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) 

 

3、创建/使用我们自己的数据库:chbigdata, 并且通过命令db.createUser({user:"chbigdata",pwd:"chbigdata",roles:["readWrite","dbAdmin","dbOwner"]});创建用户

>use chbigdata;

switched to db chbigdata

>db.createUser({user:"chbigdata",pwd:"chbigdata",roles:["readWrite","dbAdmin","dbOwner"]});

Successfully added user: {

"user" : "chbigdata",

"roles" : [

"readWrite",

"dbAdmin",

"dbOwner"

]

 

}

同样,也可以在admin数据库创建用户;

完成后,修改配置文件,启用认证授权。再登陆相应的数据库就可以授权

db.auth("chbigdata","chbigdata");

 

官方的yum安装方式:

http://docs.mongodb.org/manual/tutorial/install-mongodb-on-red-hat/ 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics