博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mongodb shell 脚本
阅读量:6678 次
发布时间:2019-06-25

本文共 2532 字,大约阅读时间需要 8 分钟。

1,设置副本集

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash
#mongodb 进入client 并use admin
cd 
/usr/mongodb/bin
MongoDB=
'./mongo 192.168.1.7:37017'
$MongoDB <<EOF
use admin
rsconf={
        
"_id" 
"Job001"
,
        
"members" 
: [
            
{
                
"_id" 
: 0,
                
"host" 
"192.168.1.7:37017"
            
}
        
]
    
}
rs.initiate(rsconf)
rs.add(
"192.168.1.8:37017"
)
rs.add(
"192.168.1.9:37017"
)
exit
;
EOF

2,修改副本集里mongodb的优先级

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/bash
#mongodb 进入client 并进入primary
cd 
/usr/mongodb/bin
MongoDB=
'./mongo 192.168.1.7:37017'
$MongoDB <<EOF
use MongoModelJobResume
#rs.status()
cfg=rs.conf()
cfg.members[0].priority=99
cfg.members[1].priority=50
cfg.members[2].priority=30
rs.reconfig(cfg)
rs.conf()
exit
;
EOF

3,把一个表转到临时表,再拷贝回来,这样oplog中就会重新生成新的完整log(前提是oplog要足够大)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/bash
#mongodb 进入client 并进入primary
cd 
/usr/mongodb/bin
MongoDB=
'./mongo 192.168.1.7:37017'
$MongoDB <<EOF
use MongoModelJobResume
rs.remove(
"192.168.1.8:37017"
)
rs.remove(
"192.168.1.9:37017"
)
db.tbJobResume.renameCollection(
"tbJobResumeOld"
)
db.tbJobResumeOld.copyTo(
"tbJobResume"
)
rs.add(
"192.168.1.8:37017"
)
rs.add(
"192.168.1.9:37017"
)
#db.tbJobResumeOld.drop()
exit
;
EOF

4,按照日期生成mongodb日志

1
2
3
4
5
6
7
8
9
#!/bin/bash
#mongodb client  use admin
cd 
/usr/mongodb/bin
MongoDB=
'./mongo 192.168.1.7:37017'
$MongoDB <<EOF
use admin
db.runCommand( { logRotate : 1 } )
exit
;
EOF

配合crontab 按每天的日期生成log

5,自动备份还原mongodb的脚本

================自动备份并且压缩============================

1
2
3
4
5
6
7
8
9
#!/bin/bash
filename=`
date 
+%Y%m%d%H`
backmongodbFile=mongodb$filename.
tar
.gz
cd 
/home/mongo/back/
/usr/mongodb/bin/mongodump 
-h 192.168.1.7 -port 37017 -d MongoDBAgent -o mongodb_dump/
/usr/mongodb/bin/mongodump 
-h 192.168.1.7 -port 37017 -d MongoDBBg -o mongodb_dump/
/usr/mongodb/bin/mongodump 
-h 192.168.1.7 -port 37017 -d MongoModelActor -o mongodb_dump/
tar 
czf $backmongodbFile  mongodb_dump/
rm 
mongodb_dump -rf


================自动解压并还原数据=============================

1
2
3
4
5
6
7
8
9
#!/bin/bash
filename=
'20150330013'
backmongodbFile=mongodb$filename.
tar
.gz
cd 
/home/mongo/back/
tar 
zxvf $backmongodbFile
/usr/mongodb/bin/mongorestore 
-h 192.168.1.6 -port 37017 --drop -d MongoDBAgent mongodb_dump
/MongoDBAgent
/usr/mongodb/bin/mongorestore 
-h 192.168.1.6 -port 37017 --drop -d MongoDBBg mongodb_dump
/MongoDBBg
/usr/mongodb/bin/mongorestore 
-h 192.168.1.6 -port 37017 --drop -d MongoModelActor mongodb_dump
/MongoModelActor
rm 
mongodb_dump -rf
本文转自wks9751CTO博客,原文链接:http://blog.51cto.com/wks97/1748484
 ,如需转载请自行联系原作者
你可能感兴趣的文章
JavaScript数据类型(转)
查看>>
Makefile: (实验) 目标命令的结束标志
查看>>
Python自动化开发学习的第十周----Redis
查看>>
volley7--NetworkDispatcher从网络中获取数据
查看>>
git和GItHub的区别
查看>>
ftp服务器搭建流程详解
查看>>
C#面向对象(四):其他面向对象知识
查看>>
bzoj2539
查看>>
My thoughts after NOIP 2018(1)
查看>>
烂泥:学习Nagios(二):Nagios配置
查看>>
模拟实现 百度翻译 右下方的可折叠的分享按钮列表
查看>>
天降祥瑞,搬家来到cnblogs
查看>>
360 2015校园招聘 第一题
查看>>
Git上传代码的步骤
查看>>
sass基础常用指南
查看>>
数学 Codeforces Round #282 (Div. 2) B. Modular Equations
查看>>
select2清除选择(选择框内的值)
查看>>
超链接的学习与运用
查看>>
create-react-app按需引入antd-mobile
查看>>
webpack打包器
查看>>