复制集部署问题记录

1、“not authorized on admin to execute command{}

出现下列此种报错,可能是开启了keyfile或者auth认证参数,而我们此时又没有添加用户,所以会报错;

解决:可以先关闭keifile或者auth认证参数,之后新建用户,并db.auth()认证用户,之后再重新开启认证参数(记得重启mongod实例服务)

说明:在搭建完成复制集之前,mongodb.cnf配置文件中需要先屏蔽掉keyfile参数,否则在执行rs.initiate(config_rs1)时会

报认证错误,使用show dbs等命令都无法使用(可以在配置完成之后再打开keyfile参数)



2、“Attempting to initiate a replica set with name XXX,but command liner reports XXX;rejecting

mongodb.cnf配置文件中的replSet参数值已经要与复制集成员配置config_rs1中的复制集名称一致(必须一致),

要不然会如下错误:



3、“WARNING:/sys/kernel/mm/transparent_hugepage/enabled is 'always’

屏蔽keyfile参数再启动mongod进程后,使用mongo连接DB,可能会报如下错误:


解决办法:

root账户下执行如下命令,之后重启mongod服务

 echo never > /sys/kernel/mm/transparent_hugepage/enabled

 echo never >/sys/kernel/mm/transparent_hugepage/defrag

 

注:永久关闭,就将上面的命令写入到/etc/rc.local文件中


4搭建完成之后,使用db.createUser()新建一个超级管理员账号root,然后关闭所有节点,等到开启keyfile参数之后再重启mongod服务,

此时登录进mongo shell中,进行认证授权db.auth("root","passwd"),(注:此时必须useadminadmin库,否则会报如下错误):



5、mongod进程启动失败,提示“Permission denied”权限问题

secondary节点再添加完keyfile参数后无法启动,报错如下:


提示无权限,后在root账号下启动mongod服务便可以启动

出现这种现象的原因是在dbpath路径下,某些数据库相关文件是root账号权限所属,所以需要将这些文档chownmongo账号权限,再启动mongod服务即可成功


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值