[ Mongodb ] 问题总汇

来源:互联网 发布:大学语文的意义知乎 编辑:程序博客网 时间:2024/06/06 17:13

[ Mongodb ] 问题总汇

1. Mongodb备份

[root@localhost ~]# mongodump  -h 192.168.1.122 -d users -o /backup/20170228/users

2. Mongodb恢复

[root@localhost ~]# mongorestore -h 192.168.1.122 -d users /backup/20170228/users/users/

3. Mongodb重名集合名

格式:# db.copyDatabase("from database","to database","from host:port");

复制代码
rs0:PRIMARY> db.copyDatabase('users','person','192.168.1.122:27019')  { "ok" : 1 }rs0:PRIMARY> show dbslocal   0.006GBperson  0.000GBusers   0.000GBrs0:PRIMARY> use usersswitched to db usersrs0:PRIMARY> db.dropDatabase(){ "dropped" : "users", "ok" : 1 }
复制代码

4. Mongdb副本集权重问题

    Mongdb前端添加haproxy做HA,当一台mongodb服务down掉,proxy可以连接到另一台服务上,因为mongodb初始化权重一样的,因此需要修改权重来确定冗余节点。

    mongodb权重越大,就越优先为主节点

rs0:PRIMARY> config=rs.conf()rs0:PRIMARY> config.members[0].priority = 10rs0:PRIMARY> config.members[1].priority = 9rs0:PRIMARY> config.members[2].priority = 8rs0:PRIMARY> rs.reconfig(config)

这些操作必须在Primary上进程。

5. Mongdb日志过大问题


MongoDB的日志文件在设置 logappend=true 的情况下,会不断向同一日志文件追加的,时间长了,自然变得非常大。
解决如下:(特别注意:启动的时候必须是--logpath指定了log路径的)

rs0:PRIMARY> use adminrs0:PRIMARY> db.runCommand({logRotate:1})

这样就会生成一个新的日志文件。

原创粉丝点击