zoukankan      html  css  js  c++  java
  • 一个 Pg_dump SHELL 脚本

    一个 Pg_dump SHELL 脚本

    最近有个处于开发阶段的项目需要DBA介入,希望DBA对这个项目的数据库进行备份。要到主机帐号后,先对数据库进行一翻熟悉,发现上面有虽然有9个库,但是数据量都不大,除了一个库有5G左右,其它的都在1G以下,因为目前业务还没完全上线,等以后业务起来后数据量应该会大些, 由于数据库不是很大,并且和项目发员沟通后,只需要一周备一次,于是决定用pg_dump方式备份,以下是详细内容。

    备份脚本 dump_db.sh 内容

    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
    # The folling is database dump shell  
    #!/bin/bash
    export PGHOME=/usr/local/pgsql
    export PGPORT=5432
    export PGDATA=/usr/local/pgsql/data
    export PATH=$PGHOME/bin:$PATH
    CUR_DATE=`date +%Y%m%d`
    #Loading config-file
    CONFIG_FILE="/appt/pgbackup/db.config" #Set config file
    . ${CONFIG_FILE}
    #Data directory
    SAVE_BASE_DIR="/appt/pgbackup/dump_dir"
    DAT_FILE_DIR="${SAVE_BASE_DIR}/${CUR_DATE}"
    if [ -d ${DAT_FILE_DIR} ]
    then :
    else
    mkdir -p ${DAT_FILE_DIR}
    fi
    # The reall backup process !
    echo "`date +%F %T` begin backup db "
    for db_name in ${db_name[@]}
    do
    pg_dump -E UTF8 -Fc ${db_name} -U postgres -v > ${DAT_FILE_DIR}/${db_name}_${CUR_DATE}.dmp
    done
    echo "`date +% F%T` end backup db "

    db.config 脚本内容

    1
    2
    3
    4
    5
    6
    7
    8
    9
    db_name[1]=db_name1  
    db_name[2]=db_name2
    db_name[3]=db_name3
    db_name[4]=db_name4
    db_name[5]=db_name5
    db_name[6]=db_name6
    db_name[7]=db_name7
    db_name[8]=db_name8
    db_name[9]=db_name9

    将备份脚本写入任务计划

    每周三零晨四点备份

    1
    2
    ###Backup maopao db every week###  
    0 4 * * 3 /appt/pgbackup/dump_db.sh >>/appt/pgbackup/log/dump.err 2>&1
  • 相关阅读:
    1059. Prime Factors (25)
    mybatis中resultType和resultMap的区别
    Spring Boot中使用Swagger2构建强大的RESTful API文档
    ES6之6种遍历对象属性的方法
    QQ授权登录
    nodejs爬虫入门
    nrm -- NPM registry 管理工具(附带测速功能)
    Sublime Text 3 使用MarkDown编写带预览的文本
    js中字符串函数indexOf与search的区别
    linux基础入门
  • 原文地址:https://www.cnblogs.com/yaoyangding/p/14966380.html
Copyright © 2011-2022 走看看