数据库备份脚本嘎嘎香,被秀到了!

news2025/5/14 14:47:33

📢📢📢📣📣📣
哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验
一位上进心十足的【大数据领域博主】!😜😜😜
中国DBA联盟(ACDU)成员,目前服务于工业互联网
擅长主流Oracle、MySQL、PG、高斯及Greenplum运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。
✨ 如果有对【数据库】感兴趣的【小可爱】,欢迎关注【IT邦德】💞💞💞
❤️❤️❤️感谢各位大可爱小可爱!❤️❤️❤️

文章目录

  • 前言
    • 1.Oracle RMAN备份
      • 1.1 创建目录
      • 1.2 编辑脚本
      • 1.3 脚本授权
      • 1.4 执行脚本
      • 1.5 定时任务
      • 1.6 备份删除
    • 2.Oracle逻辑备份
      • 2.1 生成目录
      • 2.2 备份脚本
      • 2.3 定时任务
    • 3.MySQL逻辑全|增备份
      • 3.1 开启binlog日志
      • 3.2 全备脚本
      • 3.3 增备脚本
      • 3.4 定时任务
      • 3.5 恢复步骤
    • 4.MySQL PXB全/增备份
      • 4.1 备份脚本
      • 4.2 备份删除
      • 4.3 定时任务
    • 5.PostgreSQL逻辑备份
      • 5.1 备份脚本
      • 5.2 定时任务
      • 5.3 备份恢复
    • 6.PostgreSQL物理备份
      • 6.1 备份脚本
      • 6.2 备份恢复
    • 7.openGauss备份
      • 7.1 备份脚本
      • 7.2 定时任务
      • 7.3 备份清理

前言

在日常运行过程中,为防止出现数据库故障、病毒或者用户操作不当而导致数据丢失,必须要有良好的预备方案,特分享主流数据库备份的Shell脚本给大家。

1.Oracle RMAN备份

1.1 创建目录

[oracle@OEL7 ~]$ mkdir -p /u01/dbbak/script
[oracle@OEL7 ~]$ cd /u01/dbbak
[oracle@OEL7 ~]$ chown -R oracle:oinstall script

[oracle@OEL7 ~]$ mkdir -p /u01/dbbak/db
[oracle@OEL7 ~]$ mkdir -p /u01/dbbak/arch
[oracle@OEL7 ~]$ cd /u01/dbbak
[oracle@OEL7 ~]$ chown -R oracle:oinstall db
[oracle@OEL7 ~]$ chown -R oracle:oinstall arch

1.2 编辑脚本

[oracle@OEL7 ~]$ vi /u01/dbbak/script/rman_full.sh
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export ORACLE_SID=prod
dt=date '+%Y%m%d_%H%M%S'
/u01/app/oracle/product/19.3.0/dbhome_1/bin/rman target / cmdfile=/u01/dbbak/script/backup.sh log=/u01/dbbak/log/log_$dt.log append

[oracle@OEL7 ~]$ vi /u01/dbbak/script/backup.sh
run{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
allocate channel c4 type disk;
backup as compressed backupset database format ‘/u01/dbbak/db/DB%U.bkp’ plus archivelog format ‘/u01/dbbak/arch/ARCH%U.bkp’ delete all input;
release channel c1;
release channel c2;
release channel c3;
release channel c4;
report obsolete;
crosscheck copy;
crosscheck archivelog all;
delete noprompt obsolete;
crosscheck backup;
delete noprompt expired backup;
}
quit;
EOF

1.3 脚本授权

[oracle@OEL7 ~]$ chmod 775 /u01/dbbak/script/backup.sh
[oracle@OEL7 ~]$ chmod 775 /u01/dbbak/script/rman_full.sh

1.4 执行脚本

/u01/dbbak/script/rman_full.sh

1.5 定时任务

crontab -e 为编辑窗口
[oracle@OEL7 ~]$ crontab -l
0 2 * * * /u01/dbbak/script/rman_full.sh

1.6 备份删除

[oracle@OEL7 ~]$ rman target /
RMAN> show all;
–备份策略调整,备份保留7天
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;

2.Oracle逻辑备份

2.1 生成目录

[oracle@OEL7 ~]$ mkdir -p /home/oracle/backup/dump
[oracle@OEL7 ~]$ mkdir -p /home/oracle/backup/tars
#使用expdp时需要先指定转储文件和日志文件所在的目录,可以通过如下命令实现
SQL> CREATE OR REPLACE DIRECTORY scott_backup as ‘/home/oracle/backup/dump’;
SQL> grant read,write on directory scott_backup to public;

2.2 备份脚本

[oracle@OEL7 ~]$ vi /home/oracle/backup/exp_backup.sh
#!/bin/bash
#Oracle 环境变量
NLS_LANG=AMERICAN_AMERICA.AL32UTF8
ORACLE_SID=prod
ORACLE_BASE=/opt/oracle
ORACLE_HOME=/opt/oracle/11g
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export ORACLE_SID ORACLE_BASE ORACLE_HOME NLS_LANG PATH

#获取时间戳
#dump生成时间
export BAKUPTIME=`date +%Y%m%d%H%M%S`
#压缩文件存放目录
export DATA_DIR=/home/oracle/backup/dump
export TAR_DIR=/home/oracle/backup/tars
cd $DATA_DIR     
echo "Starting bakup..."
echo "Bakup file path $DATA_DIR/scott_expdp_$BAKUPTIME.dmp"
#parallel=4 为并行度,对于备份大数据库有助于减少备份时间,但会增加CPU负载。
expdp scott/tiger directory=scott_backup dumpfile=scott_expdp_$BAKUPTIME.dump logfile=scott_expdp_$BAKUPTIME.log parallel=4
echo "Starting tar..."
echo "Tar file path $TAR_DIR/SCOTT_$BAKUPTIME.tar.gz"
tar -zcvf $TAR_DIR/scott_expdp_$BAKUPTIME.tar.gz scott_expdp*
echo "Bakup job is done!"
#历史dump文件保留7天
find  $DATA_DIR -type f -mtime +7 -exec rm -rf {} \;

2.3 定时任务

crontab -e 为编辑窗口
[oracle@OEL7 ~]$ crontab -l
0 3 * * * /home/oracle/backup/exp_backup.sh

3.MySQL逻辑全|增备份

3.1 开启binlog日志

binlog日志默认不开启,修改参数后重启MySQL数据库
mysql> show variables like ‘%log_bin%’;

vim /etc/my.cnf
log_bin=ON
log_bin_basename=/home/mysql/mysql-bin
log_bin_index=/home/mysql/mysql-bin.index
–参数说明
log_bin:开启binlog日志文件,默认值为OFF。
log_bin_basename:binlog日志的基本文件名。MySQL会在该文件名后追加标识来表示每一个binlog文件。
log_bin_index:binlog文件的索引文件,管理所有的binlog文件。

3.2 全备脚本

# mkdir -p /home/mysql/daily
# mkdir -p /home/mysql/backup
# vi /home/mysql/Mysql-FullyBak.sh

#mysqldump to Fully backup mysql data per week!
source /etc/profile
BakDir=/home/mysql/backup
LogFile=/home/mysql/backup/bak.log
Date=`date +%Y%m%d`
Begin=`date +"%Y年%m月%d日 %H:%M:%S"`
cd $BakDir
DumpFile=$Date.sql
GZDumpFile=$Date.sql.tgz
/usr/bin/mysqldump -uroot -proot --quick --events --databases wmp --flush-logs --delete-master-logs --single-transaction >$DumpFile
/bin/tar -zvcf $GZDumpFile $DumpFile
/bin/rm $DumpFile
oldDate=`date -d '7 days ago' +%Y%m%d`
oldBakFile=${oldDate}".sql.tgz"
/bin/rm $oldBakFile
Last=`date +"%Y年%m月%d日 %H:%M:%S"`
echo 开始:$Begin 结束:$Last $GZDumpFile succ >> $LogFile
cd $BakDir/daily
/bin/rm -f *

3.3 增备脚本

# vi /home/mysql/Mysql-DailyBak.sh
#use cp to bakup mysql data everyday!
source /etc/profile
BakDir=/home/mysql/backup/daily
BinDir=/home/mysql/mysql-bin
LogFile=/home/mysql/backup/bak.log
BinFile=/home/mysql/mysql-bin/mysql-bin.index
/usr/bin/mysqladmin -uroot -proot flush-logs
Counter=`wc -l $BinFile |awk '{print $1}'`  
#产生新的mysql-bin.00000*文件
NextNum=0
#比对$Counter和¥NextNum这两个值来确定文件是不是最新的
for file in `cat $BinFile`
do
     base=`basename $file`
     #basename用于截取mysql-bin.00000*文件名,去掉./mysql-bin.000005前面的./
     NextNum=`expr $NextNum + 1`
     if [[ $NextNum -eq $Counter ]]
     then
        echo $base skip! >> $LogFile
      else
        dest=$BakDir/$base
         if(test -e $dest)
        #test -e用于检测目标文件是否存在,存在就写exist!到$LogFile去
         then
               echo $base exist! >> $LogFile
         else
                cp $BinDir/$base $BakDir
                echo $base copying >> $LogFile
          fi
fi
done

3.4 定时任务

在命令行输入:
#crontab -e
添加相应的任务,wq存盘退出
#每个星期日凌晨3:00执行完全备份脚本
0 3 * * 0 /bin/bash -x /home/mysql/Mysql-FullyBak.sh >/dev/null 2>&1
#周一到周六凌晨3:00做增量备份
0 3 * * 1-6 /bin/bash -x /home/mysql/Mysql-DailyBak.sh >/dev/null 2>&1

3.5 恢复步骤

4.MySQL PXB全/增备份

Xtrabackup是一个开源的MySQL数据库备份工具,由Percona公司开发和维护

4.1 备份脚本

vi /home/mysql/scripts/backup.sh

#!/bin/bash

echo ""
START_TIME=`date`
echo "############## backup start at $START_TIME ##############"
echo ""
###you need install xtrabackup!###
# Set env
source /home/mysql/.bash_profile
which xtrabackup
# Database Info
DB_USER="root"
DB_PASS="jeames@123"
CONF="/data/mysqldb/conf/mysql.conf"
SOCKET="/data/mysqldb/socket/mysql.sock"
BAK_BASE="/db_bak/mysql_bak/mysql"
DATE=`date +%F`
YESTERDAY=`date +%F -d "-1 days"`
WEEK_DAY=`date +%w`
BAK_DIR=$BAK_BASE/$DATE-$WEEK_DAY
# Create Directory and backup
if [ "$WEEK_DAY" == "6"  ]; then
  xtrabackup --defaults-file=$CONF --socket=$SOCKET --backup --user=$DB_USER --password=$DB_PASS --target-dir=$BAK_DIR --compress
elif [ "$WEEK_DAY" == "0"  ]; then
  INCRE_BASE=$BAK_BASE/$YESTERDAY-6
  xtrabackup --defaults-file=$CONF --socket=$SOCKET --backup --user=$DB_USER --password=$DB_PASS --target-dir=$BAK_DIR --incremental-basedir=$INCRE_BASE --compress
else
  INCRE_BASE=$BAK_BASE/$YESTERDAY-$[WEEK_DAY-1]
  xtrabackup --defaults-file=$CONF --socket=$SOCKET --backup --user=$DB_USER --password=$DB_PASS --target-dir=$BAK_DIR --incremental-basedir=$INCRE_BASE --compress
fi
echo ""
END_TIME=`date`
echo "############## backup end at $END_TIME ##############"
echo ""

4.2 备份删除

vi  /home/mysql/scripts/cleanup.sh
#!/bin/bash

echo ""
START_TIME=`date`
echo "############## clean up start at $START_TIME ##############"
echo ""

find /db_bak/mysql_bak/mysql -maxdepth 1 -type d -mtime +30
find /db_bak/mysql_bak/mysql -maxdepth 1 -type d -mtime +30 -exec rm -rf {} \;

echo ""
END_TIME=`date`
echo "############## clean up end at $END_TIME ##############"
echo ""

4.3 定时任务

运行脚本
每天凌晨 4:10 分清理 30 天之前的备份,
每天 4:30 分使用 xtrabackup 进行备份,
注意只有周六是全备,其他时间均是增备。
#crontab -e
10 4 * * * /home/mysql/scripts/cleanup.sh >> /home/mysql/scripts/cleanup.log 2>&1
30 4 * * * /home/mysql/scripts/backup.sh >> /home/mysql/scripts/backup.log 2>&1

5.PostgreSQL逻辑备份

以下是一个用于定时备份 PostgreSQL 数据库的示例脚本。这个脚本将使用 pg_dump 工具来创建数据库备份,然后将备份文件保存到指定的目录中,并可选择保留最近一段时间内的备份文件

5.1 备份脚本

vi /data/script_name.sh 

#!/bin/bash
 
# PostgreSQL数据库相关信息
db_host="localhost"
db_port="5432"
db_name="database_name"
db_user="database_user"
db_password="database_password"
 
# 备份存储目录
backup_dir="/data/backup/folder"
 
# 保留备份的天数
retention_days=7
 
# 创建备份目录
mkdir -p $backup_dir
 
# 备份文件名
backup_file="$backup_dir/backup_$(date +'%Y%m%d%H%M%S').sql"
 
# 执行备份
PGPASSWORD=$db_password 
pg_dump -h $db_host -p $db_port -U $db_user -F c -b -v -f "$backup_file" $db_name
 
if [ $? -eq 0 ]; then
    echo "数据库备份成功: $backup_file"
 
    # 删除旧的备份文件
    find $backup_dir -name "backup_*.sql" -type f -mtime +$retention_days -exec rm -f {} \;
else
    echo "数据库备份失败."
fi

5.2 定时任务

在命令行输入:
#crontab -e
#每天定时凌晨2点定时任务
0 2 * * * /data/script_name.sh

5.3 备份恢复

--恢复
drop database jmedb;
create database jmedb;;
psql --file=jmedb.sql   --先查看可否有创建数据库的语句 
psql --dbname=db2 --file=jmedb.sql   --先查看可否有创建数据库的语句

6.PostgreSQL物理备份

pg_rman是一个开源的PostgreSQL备份软件,pg_rman跑的不是流复制协议,而是文件拷贝,所以pg_rman必须和数据库Server安装在一起.

6.1 备份脚本

#!/bin/bash

source /home/postgres/.bash_profile

DATE=`date +%Y%m%d`;
PG_HOME=/home/postgres
BACK_LOG=/home/postgres/log/pg_rman_${DATE}.log

#START BACKUP
echo "START BACKUP" > $BACK_LOG
#执行备份命令
pg_rman backup --backup-mode=full -B /rmanbk >> $BACK_LOG
#备份集校验
pg_rman validate >> $BACK_LOG
#检查备份是否成功
error_num=`pg_rman show | awk 'BEGIN{n=0}{if(NR > 3 && $8 != "OK")n++}END{print n}'`
if [ $error_num > 0 ];then
    message="Postgres 数据库服务器${hostname}在${DATE}备份失败" 
    echo $message
fi
#清理无效备份集
pg_rman purge >> $BACK_LOG
echo "BACKUP  END" >> $BACK_LOG

6.2 备份恢复

–原地恢复,使用新的$PGDATA恢复
pg_ctl stop
rm -rf /postgresql/pgdata/
pg_rman restore -B /rmanbk
– 检查配置文件是否有问题,若无问题则可以启动PG
pg_ctl start
–检验数据是否正确
启动PG后,会删除recovery.signal文件

7.openGauss备份

7.1 备份脚本

vi /home/omm/backup.sh

# database dump shell
# you should change the GAUSSHOME GAUSSPORT GAUSSDATA DUMP_USER DUMP_PASSWORD
#!/bin/bash
source /etc/profile
source /home/omm/.bash_profile
export GAUSSHOME=/opt/gaussdb/app
export GAUSSPORT=26000
export GAUSSDATA=/gaussdb/data/dn1
export PATH=$PGHOME/bin:$PATH
DUMP_USER=ysla
DUMP_PASSWORD='jeames007@HW'
CUR_DATE=`date "+%Y-%m-%d-%H%M"`
dbnamelist=`cat db.txt`
 
#Loading DBLIST
gsql -p ${GAUSSPORT} postgres -c "select datname from pg_database where datname not in ('template1','template0','postgres')" -t | grep -v '^$' >db.txt
 
#save directory
SAVE_BASE_DIR="/gaussdb/dump_dir"
DAT_FILE_DIR="${SAVE_BASE_DIR}/${CUR_DATE}"
if [ -d ${DAT_FILE_DIR} ]
 then :
 else
 mkdir -p ${DAT_FILE_DIR}
fi
# The real backup step!
echo "`date "+%Y-%m-%d-%H%M"` begin backup db "
for dbname in ${dbnamelist}
do
gs_dump -E UTF8 ${dbname} -U ${DUMP_USER} -W ${DUMP_PASSWORD} -p ${GAUSSPORT} -F p -f ${DAT_FILE_DIR}/${dbname}_${CUR_DATE}.sql
gs_dumpall -l ${dbname} -U ${DUMP_USER} -W ${DUMP_PASSWORD} -p ${GAUSSPORT} -g -f ${DAT_FILE_DIR}/global_data_${dbname}_${CUR_DATE}.sql
done
tar -cjvf ${DAT_FILE_DIR}.tar.gz /${DAT_FILE_DIR} --remove-files
echo "`date "+%Y-%m-%d-%H%M"` end backup db "

7.2 定时任务

在命令行输入:
#crontab -e
30 02 * * * sh /home/omm/backup.sh

7.3 备份清理

每天都进行备份,如果备份天数过多不清理,
可能使目录打满,因此需要添加备份清理策略
在命令行输入:
#crontab -e
30 03 * * * find /gaussdb/dump_dir -not -path ‘/.’ -mtime +30 -type f -name *.tar.gz -exec rm -rf {} ;"

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

c++qt-基本组件

1. Designer 设计师(掌握) Qt包含了一个Designer程序,用于通过可视化界面设计开发界面,保存的文件格式为.ui(界面文件)。界面文件内部使用xml语法的标签式语言。 在Qt Creator中创建项目时,选中…

r语言拟合曲线

r语言拟合曲线 #圆滑曲线 library(ggalt) library(ggplot2) df <- read.csv("lqs-1.csv",headerT) p2<-ggplot(datadf,aes(xx,yy))geom_point(size1) geom_smooth(span0.1)p2结果

Error: L6218E: Undefined symbol 系列错误汇总 (referred from main.o)

传送门 错误1&#xff1a; Undefined symbol(referred from main.o)错误2&#xff1a;Undefined_symbol _use_two_region memory 错误1&#xff1a; Undefined symbol(referred from main.o) Cube_GPIO\Cube_GPIO.axf: Error: L6218E: Undefined symbol LED_GPIO_Init (referr…

OpenCV4.x(C++)人脸检测(眼睛、侧脸、正脸)

一、前言 OpenCV是一款广泛使用的计算机视觉库&#xff0c;提供了许多强大的功能&#xff0c;包括人脸检测和识别。人脸分类器是OpenCV中用于人脸检测的关键工具之一&#xff0c;能够快速准确地检测出图像中的人脸。 本文将介绍如何使用OpenCV自带的人脸分类器&#xff0c;并…

【SpringMVC快速使用】1.@RestController @RequestMapping 2.logback的使用

背景&#xff1a;为何从这个最简单的 例子写起呢&#xff1f; 那是因为我们的管理后台之类的都是别人写的&#xff0c;我也听说了大家说&#xff1a;只用Post请求就足够了&#xff0c;但是却发现&#xff0c;在浏览器中测试时&#xff0c;默认是GET请求&#xff0c;如果直接写…

【论文阅读】Consistency Models

文章目录 IntroductionDiffusion ModelsConsistency ModelsDefinitionParameterizationSampling Training Consistency Models via DistillationTraining Consistency Models in IsolationExperiment Introduction 相比于单步生成的模型&#xff08;例如 GANs, VAEs, normalizi…

自行车商城网站网页设计与制作web前端设计html+css+js成品。电脑网站制作代开发。vscodeDrea

【自行车商城网站网页设计与制作web前端设计htmlcssjs成品。电脑网站制作代开发。vscodeDrea】 https://www.bilibili.com/video/BV1wT4y1p7jq/?share_sourcecopy_web&vd_sourced43766e8ddfffd1f1a1165a3e72d7605

Docker五部曲之四:Docker Compose

文章目录 前言Compose应用程序模型Compose规范顶层属性servicenetworkvolumesconfigssecrets 环境变量.env文件environment属性主机shell中的环境变量 Profiles&#xff08;剖面&#xff09;启动剖面自动启动剖面和依赖项解析 多compose.yml文件共享与扩展构建规范构建属性 部署…

MySQL主从复制配置(双主双从)

一、架构规划 一主多从可以缓解读的压力&#xff0c;但是如果主宕机了&#xff0c;所有从都不能写了&#xff0c;因此我们配置双主双从。 1、规划图 master1和master2互为主从关系&#xff0c;slave1是master1的从&#xff0c;slave2是master2的从。 2、环境准备 准备四台机…

浅谈对Maven的理解

一、什么是Maven Maven——是Java社区事实标准的项目管理工具&#xff0c;能帮你从琐碎的手工劳动中解脱出来&#xff0c;帮你规范整个组织的构建系统。不仅如此&#xff0c;它还有依赖管理、自动生成项目站点等特性&#xff0c;已经有无数的开源项目使用它来构建项目并促进团队…

WEB服务器-Tomcat

3. WEB服务器-Tomcat 3.1 简介 3.1.1 服务器概述 服务器硬件 指的也是计算机&#xff0c;只不过服务器要比我们日常使用的计算机大很多。 服务器&#xff0c;也称伺服器。是提供计算服务的设备。由于服务器需要响应服务请求&#xff0c;并进行处理&#xff0c;因此一般来说…

浅谈缓存最终一致性的解决方案

浅谈缓存最终一致性的解决方案 作者&#xff1a;clareguo&#xff0c;腾讯 CSIG 后台开发工程师 来源&#xff1a;腾讯技术工程open in new window 到底是更新缓存还是删除缓存? 到底是先更新数据库&#xff0c;再删除缓存&#xff0c;还是先删除缓存&#xff0c;再更新数据…

(Java企业 / 公司项目)分布式事务Seata详解(含Seata+Nacos组合使用)(二)

一. Seata Server配置Nacos 什么是配置中心?配置中心可以说是一个"大货仓",内部放置着各种配置文件,你可以通过自己所需进行获取配置加载到对应的客户端.比如Seata Client端(TM,RM),Seata Server(TC),会去读取全局事务开关,事务会话存储模式等信息.Seata的配置中心…

PyTorch项目源码学习(3)——Module类初步学习

torch.nn.Module Module类是用户使用torch来自定义网络模型的基础&#xff0c;Module的设计要求包括低耦合性&#xff0c;高模块化等等。一般来说&#xff0c;计算图上所有的子图都可以是Module的子类&#xff0c;包括卷积&#xff0c;激活函数&#xff0c;损失函数节点以及相…

计算机缺失mfu140u.dll的5种解决方法,亲测有效

在计算机系统运行过程中&#xff0c;mfu140u.dll文件的丢失是一个较为常见的问题场景。这个动态链接库文件(mfu140u.dll)对于系统的正常运行具有关键作用&#xff0c;它的缺失可能导致相关应用程序无法启动或执行功能异常。具体来说&#xff0c;mfu140u.dll丢失的场景可能出现在…

QT上位机开发(QSS美化)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 我们早期学习过web开发的同学都知道&#xff0c;web开发有三个部分&#xff0c;分别是html、css和java script。其中html负责控件生成和布局&#…

基于Matlab/Simulink的MIL仿真验证解决方案

文章目录 需求追溯 虚拟环境 模型检查 仿真验证 测试报告 参考文献 针对模型开发阶段的ECU算法&#xff0c;可以很直接地将其与虚拟车辆模型连接起来&#xff0c;通过MIL对其进行验证和确认。可以在开发过程的早期检测到设计错误和不正确的需求&#xff0c;也有助于安全地…

DSL查询文档--各种查询

DSL查询文档 elasticsearch的查询依然是基于JSON风格的DSL来实现的。 1查询所有 结果&#xff1a; 2全文检索&#xff08;full text&#xff09;查询 常见的全文检索查询包括&#xff1a; match查询&#xff1a;单字段查询 multi_match查询&#xff1a;多字段查询&#xff…

阿里云ingress配置时间超时的参数

一、背景 在使用阿里云k8s集群的时候&#xff0c;内网API网关&#xff0c;刚开始是用的是Nginx&#xff0c;后面又搭建了ingress。 区别于nginx配置&#xff0c;ingress又该怎么设置参数呢&#xff1f;比如http超时时间等等。 本文会先梳理nginx是如何配置&#xff0c;再对比…