MongoDB安装:
1、MongoDB下载地址:
https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.6.0.tgz
2、上传至/iflytek/sgy/social/software/mongodb,解压
3、/iflytek/sgy/social/software/mongodb下创建数据库存放路径mongodb_data和数据库日志存放路径mongodb_log
4、/iflytek/sgy/social/software/mongodb/mongodb-linux-x86_64-2.6.0下新建mongodb.conf
----------配置文件1---------------------------
port=27017 #端口号
dbpath=/iflytek/sgy/social/software/mongodb/mongodb_data/ #数据库路径
logpath=/iflytek/sgy/social/software/mongodb/mongodb_log/mongodb.log #日志输出文件路径
pidfilepath=/iflytek/sgy/social/software/mongodb/mongo.pid
fork=true #设置后台运行
logappend=true #日志输出方式
shardsvr=true
directoryperdb=true
auth=true #开启认证
rest=true #访问页面端口号加1000
-------------配置文件2------------------------
#端口号
port = 27017
#数据目录
dbpath = /home/mongodb/data
#日志目录
logpath = /home/mongodb/logs/mongodb.log
#设置后台运行
fork = true
#日志输出方式
logappend = true
#开启认证
#auth = true
bind_ip = 192.168.0.214
-------------------------------------
5、#启动MongoDB ,利用配置文件参数启动
./mongod --config /iflytek/sgy/social/software/mongodb/mongodb-linux-x86_64-2.6.0/mongodb.conf
指定参数启动(20190417)
/home/mongodb/bin/mongod -f /home/mongodb/mongodb.conf
#关闭MongoDB,必须用127.0.0.1
无密码: ./mongo 127.0.0.1:27017/admin --eval "db.shutdownServer()"
有密码:use admin,登录,执行db.shutdownServer()
启动方式2利用命令启动:
./mongod --port 27017 --fork --dbpath=/iflytek/sgy/social/software/mongodb/mongodb_data/ --logpath=/iflytek/sgy/social/software/mongodb/mongodb_log/mongodb.log --logappend
6、netstat -lanp | grep "27017" #查看MongoDB是否启动
7、./mongo #进入MongoDB数据库控制台,简单测试。
> 2+2
4
> 3+6
9
(use admin #进入admin数据库
db.shutdownServer() #关闭MongoDB数据库)8、exit#退出或ctr +c
设置数据库访问权限:
1、设置admin数据库用户名/密码,admin是mongodb默认的数据库。
./mongo
use admin
db.addUser('sadmin','sadmin') #admin数据库的用户名,密码,添加了超级管理员
show collections #查看该库下所有的表,报错。"$err" : "unauthorized db:admin lock type:-1 client:127.0.0.1",很明显,提示没有权限
db.auth('sadmin','sadmin') #输出一个结果值为1,说明这个用户匹配上了,如果用户名、密码不对,会输出0
show collections #查看该库下所有的表
2、退出来(ctrl+c) ,新建数据库,设置用户名/密码
./mongo
show dbs//显示数据库
mongo commentDB#我们尝试连接一个新的库(无论这个库是否存在,如果不存在,往该库中添加数据,会默认创建该库),然后看看该库中的表
(
show collections# 没权限
db.auth('sadmin','sadmin')#输入结果0,用户不存在
db.addUser('test','111111') #没权限
新的数据库使用超级管理员也无法访问,创建用户也没有权限。我们需要进入admin数据库,为commentDB添加用户
)
use admin
db.auth('sadmin','sadmin')
use commentDB
show collections #已经可以访问,需要为commentDB建立用户,下次可不通过admin数据库,直接访问。
db.addUser('comment','comment123')
退出(ctrl+c)
./mongo
db.auth('comment','comment123')
show collections#可以访问
use admin
db.auth('sadmin','sadmin') show dbs #查看数据库,有默认的admin和local,以及新建的commentDB。
其它配置:
设置开机启动MongoDB:有问题
1、/etc/rc.d/init.d下新建文件mongod
ulimit -SHn 655350
#!/bin/sh
# chkconfig: - 64 36
# description:mongod
case $1 in
start)
/iflytek/sgy/social/software/mongodb/mongodb-linux-x86_64-2.6.0/bin/mongod --maxConns 20000 --config /iflytek/sgy/social/software/mongodb/mongodb-linux-x86_64-2.6.0/mongodb.conf
;;
stop)
/iflytek/sgy/social/software/mongodb/mongodb-linux-x86_64-2.6.0/bin/mongo 127.0.0.1:27017/admin --eval "db.shutdownServer()"
;;
status)
/iflytek/sgy/social/software/mongodb/mongodb-linux-x86_64-2.6.0/bin/mongo 127.0.0.1:27017/admin --eval "db.stats()"
2、chmod +x /etc/rc.d/init.d/mongod #添加脚本执行权限
3、chkconfig mongod on #设置开机启动
4、service mongod start #启动MongoDB
添加环境变量:
1、vi /etc/profile #在最后一行添加下面的代码
export PATH=$PATH:/iflytek/sgy/social/software/mongodb/mongodb-linux-x86_64-2.6.0/bin #添加环境变量
2、:wq! #保存退出
3、source /etc/profile #使配置立即生效
mongo #进入MongoDB控制台
show dbs #查看默认数据库
use admin #切换到admin数据库
exit #退出MongoDB控制台
网友评论