开发老司机有个需求让我安装一个mongodb,在网上查阅了一些资料测试了几种不是报错就是数据库命令不匹配,下面这种比较简单而且不易出错。
- 获取二进制压缩包
wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.8.tgz
- 解压缩到安装目录,创建数据目录,稍后会在配置文件配置数据目录路径
tar -xf mongodb-linux-x86_64-rhel62-3.2.8.tgz -C /usr/local/
cd /usr/local/
mv mongodb-linux-x86_64-rhel62-3.2.8 mongodb
mkdir /usr/local/mongodb/data
- 编辑配置文件
vim /usr/local/mongodb/mongodb.conf
#端口
port=27017
#数据文件存放目录
dbpath= /usr/local/mongodb/data
#日志文件存放目录
logpath= /usr/local/mongodb/mongodb.log
#使用追加的方式写日志
logappend=true
#以守护程序的方式启用,即在后台运行
fork=true
#最大同时连接数
maxConns=500
#只允许通过本机访问
#bind_ip=127.0.0.1
#启用验证
#auth = true
- 配置环境变量
echo ‘export PATH=$PATH:/usr/local/mongodb/bin‘>>/etc/profile
. /etc/profile
- 启动mongodb
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongodb.conf
- 连接到mongodb
mongo
- 创建一个管理用户(不知道生产中是不是给开发这个用户,还是给普通用户)
use admin
db.createUser({user:‘root‘,pwd:‘woshichenshifei‘,roles:[{role:‘dbAdminAnyDatabase‘,db:‘admin‘},{role:‘userAdminAnyDatabase‘,db:‘admin‘}]})
- 检查是否创建成功,验证用户认证是否正确
db.auth(‘root‘,‘woshichenshifei‘)
- 如果开发有需求修改密码,就重新给他修改一下
db.changeUserPassword(‘root‘,‘chenshifei‘)
- 创建数据库和数据库的普通用户并删除数据库和普通用户
use chenshifei
db.createUser({user:‘chenshifei‘,pwd:‘chenshifei‘,roles:[{role:‘readWrite‘,db:‘chenshifei‘}]})
db.dropUser(‘chenshifei‘)
- 退出
quit()
- 打开配置文件auth验证,重启mongodb并重连
kill `ps -ef|grep mongodb|awk ‘NR==1{print $2}‘`
去掉auth前的#
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongodb.conf
mongo localhost:27017/admin -u root -p chenshifei
- 将连接地址、用户、密码交给开发或dba