centos

centos postgresql备份恢复

小樊
92
2025-02-12 04:05:19
栏目: 云计算

在CentOS上备份和恢复PostgreSQL数据库可以通过以下几种方法实现:

逻辑备份

使用 pg_dump 命令进行逻辑备份,该命令将数据库的结构和数据导出为SQL脚本文件。

备份示例:

pg_dump -U postgres -h localhost -p 5432 -F c -b -v -f /path/to/backup/backup_file mydatabase

其中:

恢复示例:

pg_restore -U postgres -h localhost -p 5432 -d mydatabase -v /path/to/backup/backup_file

其中:

物理备份

使用 pg_basebackup 命令进行物理备份,该命令会复制整个数据目录,适用于快速恢复,但占用空间较大。

备份示例:

pg_basebackup -U postgres -D /path/to/backup -F t -v -P

其中:

自动化备份

可以使用 cron 任务定期执行备份脚本,以确保数据库的定期备份和异地备份。

备份脚本示例:

#!/bin/bash
# 配置参数
USER= "postgres"
DB_NAME= "mydatabase"
BACKUP_DIR= "/path/to/backups"
DATE=$(date +%Y%m%d%H%M%S)
# 创建备份文件路径
BACKUP_FILE= "$BACKUP_DIR/$DB_NAME - $DATE.sql"
# 使用pg_dump进行备份
pg_dump -U $USER -d $DB_NAME -f $BACKUP_FILE
# 打印备份完成信息
echo "Backup of $DB_NAME completed on $DATE. Backup file is $BACKUP_FILE"

设置定时任务:

0 2 * * * /path/to/backup_postgresql.sh

这条命令会在每天凌晨2点执行备份脚本。

通过这些步骤,您可以在CentOS系统上成功备份和恢复PostgreSQL数据库,确保数据的安全性和可靠性。

0
看了该问题的人还看了