linux部署mongoDB
环境
系统:CentOS Linux release 7.9.2009 (Core)
mongoDB版本:5.0.9
mongoDB官方下载地址:https://www.mongodb.com/try/download/community
部署目录:/opt/app # 将下载的包上传至/opt/app,解压并修改目录名 tar -xf mongodb-linux-x86_64-rhel70-5.0.9.tgz mv mongodb-linux-x86_64-rhel70-5.0.9 mongodb
# MongoDB 的可执行文件位于 bin 目录下,所以可以将其添加到 PATH 路径中,这样可以不用输入路径直接启动 export PATH=<mongodb-install-directory>/bin:$PATH # <mongodb-install-directory> 为你 mongoDB 的安装路径 export PATH=/opt/app/mongodb/bin:$PATH # 为mongodb创建数据、日志、配置文件目录 mkdir data conf logs
# 编辑配置文件
vim /opt/app/mongodb/conf/mongodb.conf # 数据保存的目录 dbpath=/opt/app/mongodb/data # 日志存放目录 logpath=/opt/app/mongodb/logs/mongodb.log
logappend=true # 指定端口 port=27017 # 开启后台运行 fork=true journal=true # 允许外网访问 bind_ip=0.0.0.0 # 不使用身份认证进行登录 auth=false
# 参数说明
--logpath 日志文件路径 --master 指定为主机器 --slave 指定为从机器 --source 指定主机器的IP地址 --pologSize 指定日志文件大小不超过64M.因为resync是非常操作量大且耗时,最好通过设置一个足够大的pologSize来避免resync(默认的 oplog大小是空闲磁盘大小的5%)。 --logappend 日志文件末尾添加 --port 启用端口号 --fork 在后台运行 --only 指定只复制哪一个数据库 --slavedelay 指从复制检测的时间间隔 --auth 是否需要验证权限登录(用户名和密码) --config 配置文件位置
参数方式启动
mongod --dbpath=/opt/app/mongodb/data --logpath=/opt/app/mongodb/logs/mongodb.log --fork
进入mongodb客户端
mongo
由于它是一个JavaScript shell,可以运行一些简单的算术运算
# mongodb
mongod --shutdown -f /opt/app/mongodb/conf/mongodb.conf
# 也可以在 mongo 的命令出口中实现
db.shutdownServer()
注:添加完用户后可以使用show users或db.system.users.find()查看已有用户
添加完管理用户后,关闭MongoDB,并使用认证方式再次开启MongoDB,这里注意不要使用kill直接去杀掉mongodb进程,(如果这样做了,请去data目录下删除mongod.lock文件),可以使用db.shutdownServer()关闭
在配置文件中修改:
auth = true
再次启动,进入mongo shell,使用admin数据库并进行验证,如果不验证,是做不了任何操作的。
认证,返回1表示成功
验证之后还是做不了操作,因为admin只有用户管理权限,下面创建用户,用户都跟着库走
使用创建的用户root登录进行数据库操作
mongo 127.0.0.1/mydb -uroot -p
然后就可以进行增删改查各种数据操作...
【参考:http://www.gosanye.com/post/10547.html】