PostgreSQL 数据库备份恢复脚本
    		       		warning:
    		            这篇文章距离上次修改已过432天,其中的内容可能已经有所变动。
    		        
        		                
                
#!/bin/bash
 
# PostgreSQL 数据库备份和恢复脚本
# 使用前请确保已经安装了 pg_dump 和 psql 工具
 
# 配置信息
DB_USER="your_username"
DB_PASSWORD="your_password"
DB_HOST="your_host"
DB_NAME="your_dbname"
BACKUP_PATH="/path/to/your/backup/directory"
 
# 备份数据库
backup_database() {
    echo "开始备份数据库..."
    # 创建备份目录
    mkdir -p "$BACKUP_PATH"
    # 执行备份命令
    pg_dump -U "$DB_USER" -h "$DB_HOST" -W -Fc -b -v --file "$BACKUP_PATH/backup.dump" "$DB_NAME"
    echo "备份完成."
}
 
# 恢复数据库
restore_database() {
    echo "开始恢复数据库..."
    # 确保备份文件存在
    if [ ! -f "$BACKUP_PATH/backup.dump" ]; then
        echo "备份文件不存在."
        exit 1
    fi
    # 恢复数据库
    psql -U "$DB_USER" -h "$DB_HOST" -W -v -d "$DB_NAME" -f "$BACKUP_PATH/backup.dump"
    echo "恢复完成."
}
 
# 根据传入参数执行相应的操作
case "$1" in
    backup)
        backup_database
        ;;
    restore)
        restore_database
        ;;
    *)
        echo "用法: $0 {backup|restore}"
        exit 1
esac这个脚本提供了一个简单的框架来备份和恢复 PostgreSQL 数据库。使用前,需要根据实际情况配置 DB_USER, DB_PASSWORD, DB_HOST, DB_NAME, 和 BACKUP_PATH。使用时,运行脚本并传递 backup 或 restore 作为参数来执行对应的操作。
评论已关闭