postgresql 主从备份

数据库版本:9.2.4

操作系统:win7

主库ip:192.168.1.105

从库ip:192.168.1.106

操作数据库软件pgadmin

1.分别停止主库和从库的postgresql服务

2.移除从库目录下的data文件夹(做好备份)

3.修改主库的postgresql.conf文件:

 将listen_addresses的值设置为'*'
listen_addresses = '*'
配置归档模式为hot_standby
wal_level = hot_standby
配置最大备机数量,这里可以设置的稍大于实际情况,方便日后扩展
max_wal_senders = 5
打开hot_standby模式
hot_standby = on

修改完成之后保存退出。

4.修改主库的pg_hba.conf文件:

增加以下行
host all all 0.0.0.0/0 md5
在文件结尾处增加以下行
host replication postgres 192.168.1.105/32 trust
host replication postgres 192.168.1.106/32 trust
host all all 192.168.1.105/32 trust
host all all 192.168.1.106/32 trust

5.启动主库的服务

6.执行一次基础备份

cmd进入到安装目录下的bin文件夹下,输入 psql -U ‘用户名’ -p ‘端口号’ -d ‘数据库名’ ,

链接成功后会进入到数据库,接下来开始基础备份命令行执行 select pg_start_backup('fullbackup');

将主库的data文件夹完全拷贝到从库的安装目录下 ,并且删除postmaster.pid文件

主库命令行执行select pg_stop_backup();结束基础备份

7.在从库的data目录下创建recover.conf文件:

在从库节点的data目录中创建recover.conf文件,这个文件可以从安装路径下的share目录中复制recover.conf.simple到data目录并重命名为recover.conf,编辑内容如下:
recovery_target_timeline = 'latest'
standby_mode = 'on'
primary_conninfo = 'host=‘主机的ip’ port=‘主机的端口号’ user=‘主机的用户名’'

trigger_file = 'D://recovery_trigger' (这里到d盘创建这个文件)

8.检查从库的data目录权限

 在data目录上鼠标右键点击属性按钮,在弹出的对话框中,且还到安全选项卡,查看是否有当前登录用户,如果有,请检查用户是否对data目录有完全控制权限;如果没有当前用户,则点击编辑按钮,在弹出的"权限"设置对话框中,点击添加按钮,会弹出选择用户的对话框,这里您可能看不到当前用户,或者不知道如何填写完整的用户名称,所以点击高级按钮,进行选择:选择当前用户,双击之后一路确定,如下图所示:在data权限对话框中,一定要选择完全控制、
9.启动从库的服务

主库添加一条记录,在从库上查看是否有刚才添加的记录。(这里注意的是 从库是只读模式 只能查看 不能进行写的操作


原文地址:

https://www.cnblogs.com/ode/p/3299513.html

猜你喜欢

转载自blog.csdn.net/tq88888/article/details/80162917