Mongo 3.2.20 arbiter日志滚动问题

一般情况下,用db.adminCommand({logRotate : 1})命令来进行日志滚动,但在主从结构的arbiter上报如下错误

rs1:ARBITER> db.adminCommand({logRotate : 1})
{
        "ok" : 0,
        "errmsg" : "not authorized on admin to execute command { logRotate: 1.0 }",
        "code" : 13
}
rs1:ARBITER>

并且主库上建的admin库及其用户都没有同步到arbiter,无法进行认证。暂时没有找到是什么原因。

rs1:ARBITER> use admin
switched to db admin
rs1:ARBITER> db.auth('admin','admin12345')
Error: Authentication failed.

从Mongo的官方文档来看,在Linux上还有一种强制滚动日志的方式:

kill -SIGUSR1 <mongod process id>

所以抓取Mongo进程的ID并向其发送SIGUSR1通知其强制滚动日志的命令如下:

ps aux | grep mongo | grep -v grep | tr -s " " | cut -d" " -f2 | xargs kill -SIGUSR1
发布了51 篇原创文章 · 获赞 3 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/pengpengzhou/article/details/82882619