当前位置: 首页 > wzjs >正文

玉林市建设局网站2023年8月新冠又来了

玉林市建设局网站,2023年8月新冠又来了,云南疫情最新消息今天,工作室装修效果图注意: 以下为对PostgreSQL13.16版本数据库备份shell脚本参考请确认备份节点上psql和pgdump的版本不至于太低,建议>13.16该脚本目前是对于整库、(默认针对public这个schema,如果有其他schema,请自行添加一层循环&am…

注意:

  • 以下为对PostgreSQL13.16版本数据库备份shell脚本参考
  • 请确认备份节点上psql和pgdump的版本不至于太低,建议>=13.16
  • 该脚本目前是对于整库、(默认针对public这个schema,如果有其他schema,请自行添加一层循环)库下各表都做了备份,若不需要对各表进行备份,去除关于备表的for循环即可

一.脚本内容 

#!/bin/bash# 定义连接pg的用户、密码、地址、端口
export pg_user="postgres"
export pg_pass="SLBpg2025"
export pg_host="192.168.2.199"
export pg_port="25432"
# 备份主目录
bak_path="/data/pg/back"
# 备份数据保留周期(单位:天)
retain_days=3
# 时间格式
date="$(date +"%Y-%m-%d")"
# 日志存放目录
log_file="$bak_path/$date/backup.log"
# 忽略备份的数据库
exdbname=' template0| template1| postgres'
# 获取所有数据库名
dbname=$(PGPASSWORD=$pg_pass psql -h$pg_host -p$pg_port -U$pg_user -c "SELECT datname FROM pg_database;" | sed -n '3,$p'|head -n -2 | grep -Ev "^($exdbname)$")
echo $dbname
if [ -z "$dbname" ]; thenecho "未获取到有效的数据库列表,请检查 PGSQL 连接和权限。" > $log_fileexit 1
fifor db in $dbname; do# 创建数据库对应的备份目录db_backup_dir="$bak_path/$date/$db"if [ ! -d "$db_backup_dir" ]; thenmkdir -p "$db_backup_dir"fi# 备份整个数据库PGPASSWORD=$pg_pass pg_dump -h$pg_host -p$pg_port -U$pg_user $db | gzip > $db_backup_dir/${db}_$(date +%F).sql.gzif [ $? -ne 0 ]; thenecho "备份数据库 $db 失败。" >> $log_fileelseecho "数据库 $db 备份成功,存放路径 $db_backup_dir/${db}_$(date +%F).sql.gz" >> $log_filefi# 获取数据库中的表列表tb_list=$(PGPASSWORD=$pg_pass psql -h$pg_host -p$pg_port -U$pg_user -d"$db" -tAc "SELECT tablename FROM pg_tables WHERE schemaname = 'public';")# 检查是否获取到表列表if [ -z "$tb_list" ]; thenecho "未获取到数据库 $db 中的表列表。" >> $log_filecontinuefi# 对每个表进行操作for tb in $tb_list; do# 备份单个表PGPASSWORD=$pg_pass pg_dump -h$pg_host -p$pg_port -U$pg_user -d"$db" -t"$tb" -F p | gzip > "$db_backup_dir/${db}_${tb}_$(date +%F).sql.gz"if [ $? -ne 0 ]; thenecho "备份表 $db.$tb 失败。" >> $log_fileelseecho "表 $db.$tb 备份成功,存放路径 $db_backup_dir/${db}_${tb}_$(date +%F).sql.gz" >> $log_filefidone
donefind $bak_path -mtime +$retain_days -exec rm -f {} \;

二.执行效果

[root@master01 back]# bash back.sh 
slb
[root@master01 back]# ll
total 4
drwxr-xr-x 3 root root   35 Feb 17 22:10 2025-02-17
-rw-r--r-- 1 root root 2157 Feb 17 22:10 back.sh
[root@master01 back]# cd 2025-02-17/
[root@master01 2025-02-17]# ll
total 4
-rw-r--r-- 1 root root 299 Feb 17 22:10 backup.log
drwxr-xr-x 2 root root 112 Feb 17 22:10 slb
[root@master01 2025-02-17]# cat backup.log 
数据库 slb 备份成功,存放路径 /data/pg/back/2025-02-17/slb/slb_2025-02-17.sql.gz
表 slb.students 备份成功,存放路径 /data/pg/back/2025-02-17/slb/slb_students_2025-02-17.sql.gz
表 slb.employees 备份成功,存放路径 /data/pg/back/2025-02-17/slb/slb_employees_2025-02-17.sql.gz

三.创建定时任务

[root@master01 2025-02-17]# tail -1 /etc/crontab 
0 2 * * * root /usr/bin/bash /data/pg/back/back.sh
http://www.dtcms.com/wzjs/325508.html

相关文章:

  • 网站建设公司ipo广州百度推广客服电话
  • 网站建设系统公司郑州百度分公司
  • wordpress 摄影博客外贸seo优化
  • 网站建设毕业设计心得谷歌关键词推广怎么做
  • 找人做网站会给源代码吗广告推广计划
  • 网站建设案例欣赏公关公司是干嘛的
  • 泉州网站设计招聘网最新网站查询工具
  • 网站 建设 步骤无锡seo公司找哪家好
  • 仿门户网站今日军事新闻报道
  • 重庆建工集团股份有限公司官网百度首页排名优化多少钱
  • 深圳外贸建设网站搜索引擎优化seo应用
  • 横沥镇仿做网站超链接友情外链查询
  • 服务区里可以做多少个网站排名优化是怎么做的
  • 网站开发工程师职业做百度推广的公司电话号码
  • 网站展示模板seo优化服务是什么意思
  • 深圳市公司网站建设免费跨国浏览器
  • 网站公司备案有用国外域名注册网站
  • 前端网站模板厦门百度seo
  • 万州医院网站建设手机网址大全123客户端下载
  • 免费外贸网站制作怎么提高百度关键词排名
  • 深圳东门步行街地铁站打开网站搜索
  • 怎么做日本钓鱼网站吗百度一下官方网站
  • 网站站开发 流量惠州自动seo
  • 怎么样看网站用什么程序做的百度竞价推广培训
  • 漫画门户网站怎么做的怎么恶意点击对手竞价
  • 网网站开发怎样做网站平台
  • 专业 网站设计友链交易平台源码
  • 网站建设仟首先金手指14seo工资待遇怎么样
  • 网站建设推荐网广州发布紧急通知
  • 自己的网站做优化怎么设置缓存百度app官方正式版