postgresql12.15备份命令
时间: 2023-11-26 16:48:00 浏览: 39
postgresql12.15备份命令为pg_basebackup,具体使用方法如下:
```shell
pg_basebackup -h 主节点IP -p 5432 -U replica -Fp -Xs -Pv -R -D /home/pgsql/data
```
其中,-h指定主节点的IP地址,-p指定主节点的端口号,-U指定连接主节点的用户名,-F指定备份文件格式,-X指定备份方式,-P指定备份进度输出方式,-R指定备份后是否启动流复制,-D指定备份文件存储路径。
需要注意的是,备份前需要在从服务器上创建好备份文件存储路径,并且确保从服务器上的postgresql.conf文件已经正确配置。
相关问题
postgresql12.16备份还原命令
以下是postgresql12.16备份还原命令的示例:
1. 备份数据库:
```shell
pg_dump -h 12.16.2.41 -p 5432 -U postgres --dbname="tenant_101" -t pl_dictionary_bak20200729 -f "/home/pgbackupfiles/pl_dictionary_bak20200729.sql"
```
该命令将连接到主机为12.16.2.41,端口为5432的postgresql数据库,并备份名为“tenant_101”的数据库中的表“pl_dictionary_bak20200729”,并将备份文件保存在“/home/pgbackupfiles/pl_dictionary_bak20200729.sql”中。
2. 还原数据库:
```shell
psql -U postgres -d tenant_101 -h 12.16.2.41 -p 5432 < /home/software/apdb/pl_dictionary_bak20200729.sql
```
该命令将连接到主机为12.16.2.41,端口为5432的postgresql数据库,并将名为“tenant_101”的数据库还原为“/home/software/apdb/pl_dictionary_bak20200729.sql”中的备份文件。
PostgreSQL自动备份
PostgreSQL自动备份可以通过使用pg_dump命令和crontab定时任务来实现。pg_dump命令可以将PostgreSQL数据库备份到本地文件中,而crontab定时任务可以在指定的时间自动运行pg_dump命令。以下是实现自动备份的步骤:
1. 创建一个用于备份的目录,例如/home/postgres/backups。
2. 创建一个用于存储备份文件的目录,例如/home/postgres/backups/db_backups。
3. 创建一个名为backup.sh的脚本文件,并将以下代码添加到其中:
```
#!/bin/bash
# 定义备份文件的名称
BACKUP_FILE="db_backup_$(date +%Y-%m-%d_%H-%M-%S).sql"
# 定义备份文件的路径
BACKUP_PATH="/home/postgres/backups/db_backups/$BACKUP_FILE"
# 执行备份命令
pg_dump -U postgres -h localhost mydatabase > $BACKUP_PATH
```
4. 将backup.sh文件设置为可执行文件:
```
chmod +x backup.sh
```
5. 使用crontab定时任务来自动运行backup.sh脚本。例如,如果您想每天晚上10点运行备份脚本,请运行以下命令:
```
crontab -e
```
然后添加以下行:
```
0 22 * * * /home/postgres/backups/backup.sh
```
这将在每天晚上10点运行backup.sh脚本,并将备份文件保存到/home/postgres/backups/db_backups目录中。