MongoDB备份脚本.241217

news/2025/1/5 18:05:34/文章来源:https://www.cnblogs.com/amadeuslee/p/18650344
#!/bin/bash
#backup MongoDB
#mongodump命令路径
DUMP=/home/mongodb/bin/mongodump
#临时备份目录
OUT_DIR=/home/mongodb_bak/mongodb_bak_now
#备份存放路径
TAR_DIR=/home/mongodb_bak/mongodb_bak_list
#获取当前系统时间
DATE=`date +%Y_%m_%d`
#数据库账号
DB_USER=root
#数据库密码
DB_PASS=密码
#DAYS=7代表删除7天前的备份,即只保留近7天的备份
DAYS=15
#mongo服务器ip
IP=127.0.0.1
#最终保存的数据库备份文件
TAR_BAK="mongodb_bak_all_$DATE.tar.gz"
mkdir -p $OUT_DIR/$DATE
#备份全部数据库
$DUMP -h $IP:27017 -u $DB_USER -p $DB_PASS --authenticationDatabase "admin" --gzip -o $OUT_DIR/$DATE
#压缩为.tar.gz格式
tar -zcvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE
#删除临时备份目录
cd $OUT_DIR
rm -rf $OUT_DIR/*c
#删除DAYS天前的备份文件
find $TAR_DIR/ -mtime +$DAYS -delete

备份特定库,在mongodump指令中加入 -d参数,制定数据名即可。

#!/bin/bash
#backup MongoDB
#mongodump命令路径
DUMP=/home/mongodb/bin/mongodump
#临时备份目录
OUT_DIR=/home/mongodb_bak/mongodb_bak_now
#备份存放路径
TAR_DIR=/home/mongodb_bak/mongodb_bak_list
#获取当前系统时间
DATE=`date +%Y_%m_%d`
#数据库账号
DB_USER=root
#数据库密码
DB_PASS=密码
#DAYS=7代表删除7天前的备份,即只保留近7天的备份
DAYS=15
#mongo服务器ip
IP=127.0.0.1
#最终保存的数据库备份文件
TAR_BAK="mongodb_bak_core_$DATE.tar.gz"
mkdir -p $OUT_DIR/$DATE
#备份网关配置库
$DUMP -h $IP:27017 -u $DB_USER -p $DB_PASS --authenticationDatabase "admin" --gzip -d 指定的数据库名称  -o $OUT_DIR/$DATE
#压缩为.tar.gz格式
tar -zcvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE
#删除临时备份目录
cd $OUT_DIR
rm -rf $OUT_DIR/*
#删除DAYS天前的备份文件
find $TAR_DIR/ -mtime +$DAYS -delete

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/863433.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL备份脚本.241217

MYSQL备份,每天全量备份(排除由于GTID的缘故造成恢复问题的系统库),然后通过Gzip进行压缩。 #!/bin/bash#DEFINE VARIABLES BACKUPUSER=root BACKUPPASS=root密码 BACKUPPORT=mysql端口 #BACKUPSOCKET=/home/data/$BACKUPPORT/logs/mysql.sock BACKUPIP=localhost MYSQL=/…

欧拉OpenEuler安装JAVA.241227

1. 安装java mkdir -p /home/java tar -zxvf jdk-8u391-linux-x64.tar.gz -C /home/java cd /home/java cd jdk1.8.0_391/2. 配置java vim /etc/profile ,最后加上export JAVA_HOME=/home/java/jdk1.8.0_391export CLASSPATH=.:$JAVA_HOME/libexport PATH="$PATH:$JAVA_…

PCIe扫盲——基地址寄存器(BAR)详解

基地址寄存器(BAR)在配置空间(Configuration Space)中的位置如下图所示:其中Type0 Header最多有6个BAR,而Type1 Header最多有两个BAR。这就意味着,对于Endpoint来说,最多可以拥有6个不同的地址空间。但是实际应用中基本上不会用到6个,通常1~3个BAR比较常见。 主要注意…

使用标签策略规范资源上的标签

阿里云标签服务提供了标签策略功能,能够帮助企业解决在标签使用过程中遇到的漏打标签、标签拼写错误等问题,同时为用户提供了自动打标的能力。引言 阿里云标签服务提供了标签策略功能,能够帮助企业解决在标签使用过程中遇到的漏打标签、标签拼写错误等问题,同时为用户提供了…

java字符串拼接遇到null你会处理吗

现有一个场景,对于发票信息,需要把信息中的地址和电话进行拼接,开户号和账号进行拼接,那应该怎么做?最简单的方法是使用+拼接,但问题是如果有个字段为空,是null,那么拼接结果是什么样的?来个下面的示例public static void main(String[] args) {String a = null;Strin…

欧拉OpenEuler安装tomcat.241227

1. 安装tomcat unzip tomcat.zip mv tomcat /home/ cd /home/tomcat chmod +x *.sh cd bin chmod +x *.sh/home/tomcat下 三个sh 进行启动关闭 2. 开web端口 firewall-cmd --list-ports firewall-cmd --permanent --add-port=9090/tcp firewall-cmd --reload.zstitle { width:…

03CommonsCollections1

CC链的介绍Apache Commons 当中有⼀个组件叫做 Apache Commons Collections ,主要封装了Java 的 Collection(集合) 相关类对象,它提供了很多强有⼒的数据结构类型并且实现了各种集合工具类。 作为Apache开源项⽬的重要组件,Commons Collections被⼴泛应⽤于各种Java应⽤的开…

MYSQL数据库导出导入脚本.250102

以test数据库为例:一、导出数据库 /usr/local/mysql/bin/mysqldump -uroot -p test --routines | gzip > test_250102.sql.gz二、导入数据库 gunzip < /root/test_250102.sql.gz | /usr/local/mysql/bin/mysql -uroot -p test.zstitle { width: 280px; text-align: cent…

Github + Jekyll 搭建项目wiki

网站托管 创建新仓库 创建以自己名字为前缀, .github.io​为后缀的仓库 ​​ 在仓库的Settings中的Pages里设置Build and deployment​为Github Action​ ​​ 过一会即可跳转域名访问自己的页面 ​​ ‍ fork仓库 另外一种方法, 直接fork主题仓库,可以从官方主题这里获取更多。…

Postman安装及汉化教程 | 手把手教你轻松搞定

前言 Postman 是一款功能强大的 API 测试工具,深受开发者喜爱。然而,原版 Postman 是英文界面,对于习惯中文的用户可能不够友好。本教程详细介绍如何下载安装 Postman 并成功实现汉化,适合零基础用户。一、下载安装包 首先,获取 Postman 的安装包及对应汉化包: 👉 点击…

Postman安装及汉化操作全解(含图文步骤)

前言 Postman 是一款功能强大的 API 测试工具,深受开发者喜爱。然而,原版 Postman 是英文界面,对于习惯中文的用户可能不够友好。本教程详细介绍如何下载安装 Postman 并成功实现汉化,适合零基础用户。一、下载安装包 首先,获取 Postman 的安装包及对应汉化包: 👉 点击…