Windows 下postgres 备份、还原

确认好备份还原的工具版本与数据库版本

备份

在Windows系统下使用pg_dump命令备份远程数据库,需要按照以下步骤进行操作:

1. 打开命令提示符窗口,输入以下命令连接到远程数据库:

psql -h [远程主机IP地址] -p [远程主机端口号] -U [用户名] -d [数据库名]

例如:

psql -h 192.168.1.100 -p 5432 -U postgres -d mydb

2. 输入密码,连接到远程数据库。

3a. 输入以下命令,使用pg_dump命令备份远程数据库:

pg_dump -h [远程主机IP地址] -p [远程主机端口号] -U [用户名] -d [数据库名] -f [备份文件路径]

例如:

pg_dump -h 192.168.1.100 -p 5432 -U postgres -d mydb -f D:\backup.sql

3b. 输入以下命令,使用pg_dump命令备份远程数据库并将备份文件保存为数据库文件格式:

pg_dump -h [远程主机IP地址] -p [远程主机端口号] -U [用户名] -F c -b -v -f [备份文件路径] [数据库名]

其中,-F c参数表示将备份文件保存为数据库文件格式,-b参数表示备份时包括大对象(BLOB),-v参数表示备份时输出详细信息。

例如:

pg_dump -h 192.168.1.100 -p 5432 -U postgres -F c -b -v -f D:\backup.backup mydb

4. 等待备份完成,备份文件将保存在指定的路径中。

注意事项:

1. 在使用pg_dump命令备份远程数据库时,需要确保本地计算机已经安装了PostgreSQL客户端工具。

2. 在连接远程数据库时,需要确保远程主机已经开启了远程访问权限。

3. 在备份远程数据库时,需要确保备份文件路径存在并且具有写入权限。


还原

在使用pg_dump命令备份远程数据库后,可以使用pg_restore命令将备份文件还原到本地或远程数据库中。要将备份文件还原到数据库中,请按照以下步骤进行操作:

1. 打开命令提示符窗口,输入以下命令连接到本地或远程数据库:

psql -h [主机IP地址] -p [主机端口号] -U [用户名] -d [数据库名]

例如:

psql -h 127.0.0.1 -p 5432 -U postgres -d mydb

2. 输入密码,连接到数据库。

3. 输入以下命令,使用pg_restore命令将备份文件还原到数据库中:

pg_restore -h [主机IP地址] -p [主机端口号] -U [用户名] -d [数据库名] [备份文件路径]

例如:

pg_restore -h 127.0.0.1 -p 5432 -U postgres -d mydb D:\backup.sql

4. 等待还原完成,数据库将包含备份文件中的数据和结构。

注意事项:

1. 在使用pg_restore命令还原备份文件时,需要确保本地计算机已经安装了PostgreSQL客户端工具。

2. 在连接数据库时,需要确保主机已经开启了访问权限。

3. 在还原备份文件时,需要确保备份文件路径存在并且具有读取权限。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Windows下设置PostgreSQL的主备(主服务器和备份服务器)可以通过以下步骤完成: 1. 安装PostgreSQL:首先,在主服务器和备份服务器上分别安装相同版本的PostgreSQL。你可以从官方网站(https://www.postgresql.org/download/windows/)下载最新的Windows安装程序。 2. 配置主服务器:在主服务器上,打开PostgreSQL安装目录中的postgresql.conf文件(默认路径为C:\Program Files\PostgreSQL\<版本号>\data\postgresql.conf)。找到以下行,并进行相应的更改: ``` # 启用归档模式 archive_mode = on # 指定归档命令 archive_command = 'copy "%p" "归档路径\%f"' ``` 确保将"归档路径"替换为一个备份存储的有效路径。保存并关闭文件。 3. 配置备份服务器:在备份服务器上,打开PostgreSQL安装目录中的postgresql.conf文件。找到以下行,并进行相应的更改: ``` # 启用热备 hot_standby = on # 指定主服务器的连接信息 primary_conninfo = 'host=主服务器IP地址 port=5432 user=用户名 password=密码' # 指定归档命令 restore_command = 'copy "归档路径\%f" "%p"' ``` 确保将"主服务器IP地址"、"用户名"和"密码"替换为实际的连接信息,并将"归档路径"替换为与主服务器相同的路径。保存并关闭文件。 4. 启动主服务器和备份服务器:在两台服务器上分别启动PostgreSQL服务。你可以使用"pg_ctl"命令来启动服务,如: ``` pg_ctl start -D "安装目录\data" ``` 5. 配置流复制:在备份服务器上,创建一个名为"recovery.conf"的文件,内容如下: ``` standby_mode = 'on' primary_conninfo = 'host=主服务器IP地址 port=5432 user=用户名 password=密码' trigger_file = '安装目录\data\trigger' ``` 确保将"主服务器IP地址"、"用户名"和"密码"替换为实际的连接信息。保存并关闭文件。 6. 启动备份服务器:在备份服务器上启动PostgreSQL服务后,它将连接到主服务器并开始进行流复制。 这样,你就完成了在Windows下设置PostgreSQL的主备配置。主服务器将负责处理所有的写操作,而备份服务器将通过流复制从主服务器同步数据,并提供读访问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值