MongoDB数据导出原创
增量同步MongoDB库表中的数据。延迟5分钟,导出前10分的数据。
touch export_mongodb.sh
vim export_mongodb.sh
1
2
2
#!/bin/bash
source ~/.profile
LOG_F=~/script/mongodb_monitor.log
echo "---------------------------------------------" >> ${LOG_F}
###按天导出 T+1###
#DATE=`date +'%Y-%m-%d' -d '+1 days'`
#DATE_BEFOR=`date +'%Y-%m-%d'`
#qj='{"modifyTime":{$gte:"'"$DATE_BEFOR"' 00:00:00",$lt:"'"$DATE"' 00:00:00"}}'
######
###按分钟导出 延迟导出前10分的数据###
mm_date=`date +'%Y-%m-%d %H:%M:%S' -d '+8 hours'`
mm_befor=`date +'%Y-%m-%d %H:%M:%S' -d '+8 hours -10 minute'`
mm_path=`date +'%Y/%m/%d/%H/%M' -d '+8 hours -10 minute'`
DATE=${mm_date:0:15}0:00
DATE_BEFOR=${mm_befor:0:15}0:00
qj='{"modifyTime":{$gte:"'"$DATE_BEFOR"'",$lt:"'"$DATE"'"}}'
######
PATH_N=${mm_path:0:15}0
FILE_NAME=export_monitor_`date +'%Y%m%d%H%M%S' -d '+8 hours -10 minute'`.csv
echo ${DATE_BEFOR} >> ${LOG_F}
echo ${DATE} >> ${LOG_F}
echo ${PATH_N} >> ${LOG_F}
echo ${qj} >> ${LOG_F}
echo ${FILE_NAME} >> ${LOG_F}
rm /datadrive/${FILE_NAME}
###导出为本地文件###
/datadrive/mongodb-4.0.2/bin/mongoexport --host 10.80.16.11:27017 --db=db_name --collection=c_name -o /datadrive/${FILE_NAME} -q "$qj"
echo "---------------------------------------------" >> ${LOG_F}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
###最后部署上定时###
5,15,25,35,45,55 * * * * export_mongodb.sh
1
2
2
上次更新: 2023/09/22, 14:43:30
- 02
- 2025-03-28拍婚纱照 原创04-02
- 03
- 2024-04-05的晚上 原创04-01