当前位置: 首页 > 后端技术 > Node.js

服务器(CentOS)安装配置mongodb

时间:2023-04-03 17:25:38 Node.js

安装笔记mongoDB下载地址mongodb官网下载Linux笔记知识:安装过程服务器下载安装包下载:curl-Ohttps://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-4.0.6.tgz;解压:tar-zxvfmongodb-linux-x86_64-rhel62-4.0.6/;移动到要存放的目录mvmongodb-linux-x86_64-rhel62-4.0.6//usr/local/mongodb配置环境变量:exportPATH=/usr/local/mongodb/bin:$PATH,直接执行这条命令即可只创建一个临时环境变量,即再次断开服务器后将失效;环境变量持久化配置:需要在系统路径中添加mongod路径,在/etc/profile文件中,添加exportPATH=/usr/local/mongodb/bin:$PATH;执行source/etc/profile让系统环境变量立即生效验证是否安装成功:mongod--versiondbversionv4.0.6gitversion:caa42a1f75a56c7643d0b68d3880444375ec42e3OpenSSLversion:OpenSSL1.0.1e-fips11Feb2013allocator:tcmallocmodules:nonebuildenvironment:distmod:rhel62distarch:x86_64target_arch:x86_64mongod启动配置1。创建数据库存储放和日志目录是因为MongoDB的数据存储在data目录的db目录,而安装过程中不会自动创建该目录,所以需要手动创建data目录,在data中创建db目录目录。mongoDB启动默认使用的数据存储目录是根目录/data/db;当然也可以在其他目录下创建,然后通过--dbpath指定;在根目录下创建:mkdir-p/data/db;这里为了以后方便找,不要在根目录下创建,而是放在mongodb目录下/usr/local/mongodb/data/创建db日志目录/usr/local/mongodb/logs2。配置mongod启动文件/usr/local/mongodb/etc创建配置文件mongod.config:dbpath=/usr/local/mongodb/data#数据库存放位置(之前创建的)logpath=/usr/local/mongodb/logs/mongodb.log#数据库日志存放位置(之前创建)port=27017fork=true#后台运行auth=false#初始配置先关闭权限验证登录方式journal=false3.启动mongod启动:mongod-f/usr/local/mongod/etc/mongod.config;进入数据库管理命令界面:mongo创建数据库管理角色db.createUser({user:'root',pwd:'1234567',roles:[{'role':'userAdminAnyDatabase','db':'admin'}]})运行结果:添加用户成功:{"user":"root","roles":[{"role":"userAdminAnyDatabase","db":"admin"}]}退出服务,慎用kill直接杀掉mongodb进程,可以使用db.shutdownServer()关闭。权限启动MongoDB,在配置文件中添加:auth=true,然后启动:mongod-f/usr/local/mongod/etc/mongod.config进入mongoshell,使用admin数据库useadmin并验证db.auth('root','123456'),验证成功返回1,失败返回0;如果未验证或验证失败,则无法进行任何操作。4、将MongoDB设置为系统服务,设置为开机启动。在服务器的系统服务文件中添加mongod配置:vim/etc/rc.d/init.d/mongod,输入:start(){/usr/local/mongodb/bin/mongod--config/usr/local/mongodb/etc/mongod.config}stop(){/usr/local/mongodb/bin/mongod--config/usr/local/mongodb/etc/mongod.config--shutdown}case"$1"instart)start;;stop)stop;;restart)stopstart;;*)echo$"Usage:$0{start|stop|restart}"exit1esac保存并添加脚本执行权限:chmod+x/etc/rc.d/init.d/mongod;现在你可以尝试使用servicemongod[start|stop|restart|try-restart|reload|force-reload|status]直接管理MongoDB服务;尝试关闭服务:[lwh@insnce-4ep/]#servicemongodstop2019-03-10T16:45:22.360+0800ICONTROL[main]logfile"/usr/local/mongodb/logs/mongodb.log”存在;移动到“/usr/local/mongodb/logs/mongodb.log.2019-03-10T08-45-22”。用pid杀死进程:10652尝试启动服务:servicemongodstart;ok!!5.本地远程连接服务器数据库连接命令:mongo42.114.29.206:27017/test-uuser-ppassword报错连接失败,连接被拒绝;原因:云服务器(默认端口27017)安装MongoDB后,默认绑定IP为127.0.0.1,导致外部无法访问;解决方案:修改mongod.config配置文件,添加bind_ip=0.0.0.0绑定公网IP;重启mongodb服务servicemongodrestart发现错误:abouttoforkchildprocess,waitinguntilserverisreadyforconnections.forkedprocess:11300ERROR:childprocessfailed,exitedwitherrornumber48原因:应该是之前没有正常关闭mongodb导致的,比如直接kill-9;解决方案:找到data/mongod。锁定文件,并删除mongod.lock;以修复模式启动mongodmongod-fusr/local/mongodb/etc/mongod.config--repair;startservicemongod再次启程《积步数行万里》——持续更新~,喜欢就点赞关注吧!往期经典好文:Koa日志中间件打包开发(log4js)团队协作必备的Git操作使用pm2部署node生产环境