如题,最近尝试配置postgresql的主从模式,尝试了很久,终于成功了,现将配置过程中遇到的问题做如下总结:
    版本: 12.8
    
    安装目录: /home/pgsql
    
    系统:centeros
    
    所引用的博客
    
    
     CentOS PostgreSQL 12 主从复制(主从切换)
    
   
    问题1:
    
    pg_basebackup 指令出问题:
   
pg_basebackup -h 主节点IP -p 5432 -U replica -Fp -Xs -Pv -R -D /home/pgsql/data
    报错,不能识别 -R 指令,把-R删除后报错“unsupported server version 12.8”
    
    开始以为是版本问题,尝试了各种办法,都不行,最后发现,需要加上指令的路径“
    
     ./bin/pg_basebackup -h 主节点IP -p 5432 -U replica -Fp -Xs -Pv -R -D /home/pgsql/data
    
    ”,可以是相对路径也可以是绝对路径;
   
    问题2:
    
    对于从服务器,把data目录拷贝过来后,需要重新配置postgresql.conf文件,对于主服务器上配置的内容需要注释掉,可参照此博客
    
     postgresql主从复制配置
    
   
    问题3:
    
    在重启从服务时(
    
     pg_ctl -D /home/pgsql/data -l logfile start
    
    )出现‘
    
     unrecognized configuretion "primary_conninfo"
    
    ’等不能识别配置文件中属性信息的错误,也是扒拉了很久才解决:
    
    解决方案:
    
    如果有用户权限不对,如:“
    
     pg_ctl: cannot be run as root
    
    ”的错误,需要进入到指定用户下执行命令,我的系统是:su – postgres;
    
    然后在执行指令时加上指令绝对路径:
    
     /home/pgsql/bin/pg_ctl -D /home/pgsql/data -l logfile start
    
    (-D 指定启动时的数据文件位置,-l 指定生成的启动日志的文件名,会在执行命令的路径下生成logfile文件,记录启动日志数据)
   
以上就是对耗时2天配置主从的总结,总之结果是好的,成果实现了。
对于文中不妥的地方,大家多多指正
 
