Linux下安装MongoDB

数据库是日常开发中常常用到的东西,可是对于数据库的安装即一些配置却不是常常需要用的到的。有时,开发者们需要在新机上部署安装数据库,可是对于安装数据库,因为过程繁琐,配置麻烦,以及不经常进行配置等一系列问题,以致于常常这次安装配置完成后,等到下次又忘记怎么进行配置了,所以本人决定将这一系列的操作记录起来,以方便下次进行安装配置。

安装步骤

  • 检测是否已安装MongoDB
ps aux|grep mongdb

如果出现以下信息,表示本机已经安装了MongoDB。

在这里插入图片描述

  • 下载
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1604-3.4.10.tgz

或者直接到官网下载相应平台的安装包,再进行解压

  • 解压
tar zxf mongodb-linux-x86_64-ubuntu1604-3.4.10.tgz
  • 安装

将MongoDB移动到/usr/local/mongodb文件夹中

mv mongodb-linux-x86_64-ubuntu1604-3.4.10 /usr/local/mongodb

创建数据库文件夹与日志文件

mkdir /usr/local/mongodb/data
touch /usr/local/mongodb/logs
  • 启动

无密码形式(连接不需要用户名与密码):

/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs --logappend --port=27017 --fork

有密码形式(连接需要用户名与密码):

/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs --logappend --auth --port=27017 --fork
  • 开机启动

无密码形式:

echo "/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs --logappend --port=27017" >> /etc/rc.local

有密码形式:

echo "/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs --logappend --auth --port=27017" >> /etc/rc.local

常见参数解释

参数说明
-h(–help)获取帮助信息
–version获取版本信息
-f(–config)指定配置文件
-v(–verbose)更多
–quiet静默输出
–port指定端口号
–bind_ipIP地址绑定监听器,默认绑定所有本地地址
–maxConns最大同时连接数,默认为1000000
–logpath日志路径
–logappendlogpath路径下的日志以追加形式记录
–fork后台运行
–noauth无认证模式
–auth认证模式
–sysinfo打印系统诊断信息
–noscripting禁用脚本引擎
–notablescan不允许表扫描
–shutdown杀死一个正在运行的服务器(用于init脚本)
–mastermaster复制模式
–slaveslave复制模式
–source当为slave模式时,指定master的地址和端口
–only当为slave模式时,指定复制哪一个数据库
–autoresync自动同步slave的数据
–slavedelay从master复制到slave,设置延迟时间
–dbpath指定数据存放目录

设置密码

  • Mongodb安装好了之后,首先我们使用无密码形式启动Mongodb(无密码启动请看上面安装步骤第6条),进入/usr/local/mongodb/bin目录,输入以下命令:
./mogo
  • 查看所有数据库:
show dbs
  • 使用admin数据库:
use admin
  • 创建用户,指派角色:
# test用户名,pwd密码,role角色,db指定数据库
db.createUser({user:'test',pwd:'test1234',roles:[{role:'userAdminAnyDatabase',db:'admin'}]})
  • 退出客户端,断开Mongodb服务,以有密码形式启动Mongodb,此时你会发现不输入密码是无法链接上Mongodb的

注意:如果之前有创建数据库,后才设置的密码,你会发现not authorized错误,无法访问该数据库的表,此时你可以使用如下命令,进行改变数据库的角色:

use admin
# test为用户名,dbOwner角色表示数据库拥有者,db指定的数据库名
db.grantRolesToUser( "test" , [ { role: "dbOwner", db: "pythondb" } ]) 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值