zoukankan      html  css  js  c++  java
  • PgSQL定时备份

    1,  综述:

    下面主要是通过SQL转储的方式备份PostgreSQL, SQL 转储的方法是创建一个文本文件,这个文本里面都是 SQL 命令,当把这个文件回馈给服务器时,将重建与转储时状态一样的数据库。

    2,   备份命令

    (1)  PostgreSQL 自带的内置备份工具叫做 pg_dump

    实例:

    #su  - postgres
    #cd/usr/local/postgressql/bin
    #./pg_dump mydb > test_db.out

    从转储中恢复

    #./created restoredb
    #./psql –d restoredb < test_db.out

         (2) 当遇到大数据库时候,请使用以下方式

         实例:

    #su  - postgres
    #cd /usr/local/postgressql/bin
    #./pg_dump –Ft –b mydb > test_db.tar

    恢复大数据库

    #./created restored
    #pg_restore –d restored test_db.tar

     

    (3)  备份整个数据库使用pg_dumpall

    实例:

    #su - postgres
    #cd /usr/local/postgressql/bin
    #./pg_dumpall  –U postgres > alldb.out

    恢复数据库

    #./psql –Upostgresql < alldb.out

    一旦恢复成功,建议使用

    #vacuumdb -a –z

     

    3,  计划备份任务

    (1)    编写一个备份脚本

    #vim /home/postgres/backup.sh

    #shell variables
    date_now=`date +%Y%m%d`
    back_dir=./
    back_log_dir="./backup.log"
    rmback_log_dir="./rmback.log"
    #postgresql bakup
    /usr/local/postgressql/bin/pg_dump  -U postgres mydb >$back_dir/$date_now.out
    if [ $? = 0 ];then
    echo "$date_now postgresql backup success" >>$back_log_dir
    echo "" >> $back_log_dir
    else
    echo "$date_now postgresql backup failed" >> $back_log_dir
    echo "" >>$back_log_dir
    fi
    
    #rm back files
    find $back_dir -mtime +8 -exec rm -fr {} \;
    if [ $? = 0 ];then
    echo "$date_now rm backup files successful">>$rmback_log_dir
    echo "" >>$rmback_log_dir
    else
    echo "$date_now rm backup files failed">>$rmback_log_dir
    echo "" >>$rmback_log_dir
    fi
    #chmod –R 777 backup.sh
    #mkdir –p /data/backupdb
    #mkdir –p /var/log/pgsqllog/rmback
    #chown –R postgres /data/backupdb
    #chown –R postgres/var/log/pgsqllog/rmback
    #crontab -u postgres –e
    0 3 * * * /home/postgresql/backup.sh

    http://j3j5.com/post-129.crontab -u postgres –e

  • 相关阅读:
    silverlight 视频
    Win7/Vista下安装SQL Server 2005/2008后,进行附加数据库错误的解决
    IIS篇
    ARCGIS 定位篇
    sqlserver 2008 修改表结构不能保存
    更新silverlight 后 无法启动调试 未安装silverlight developer 运行时解决办法
    2点经纬度计算相对方位
    VS2010中文旗舰版在WIN7 64位操作系统下安装
    self = [super init]
    NSXMLParser XML 解析 解压
  • 原文地址:https://www.cnblogs.com/shuaixf/p/2695245.html
Copyright © 2011-2022 走看看