postgresql - 无法加载库“$libdir/repmgr_funcs”:错误:无法访问文件“$libdir/repmgr_funcs”:没有这样的文件或目录
问题描述
我计划将数据从 postgres 9.3 移动到 9.6,在 9.3 中它配置了 repmgr 3.0.1。尝试从 9.3 到 9.6 的 pg_upgrade 没有在 9.6 中配置 repmgr,抛出错误为
无法加载库“$libdir/repmgr_funcs”:错误:无法访问文件“$libdir/repmgr_funcs”:没有这样的文件或目录
我试图在 postgres 9.6 上配置 repmgr 3.0.1。但是这样做 pg_upgrade 失败了,它在启动 postgres 9.6 时说明错误
致命:无法加载库“/usr/local/pgsql-9.6/lib/repmgr_funcs.so”:/usr/local/pgsql-9.6/lib/repmgr_funcs.so:未定义符号:RequestAddinLWLocks LOG:数据库系统已关闭
解决方案
PG 9.6.0 发行说明说:
RequestAddinLWLocks() 函数被删除,并由 RequestNamedLWLockTranche() 代替。这可以更好地识别自定义 LWLock,并且不易出错。
由于这种与 PG 的不兼容,您不能使用在 PG 9.3 和 PG 9.6 上工作的 repmgr 版本。
您需要升级到更新的 repmgr 版本,并且由于不再支持 repgmr 3,您应该使用 repgmgr 4。
推荐阅读
- django - 处理超出 numpy 范围的浮点值
- hadoop - 由 cloudera manager 代理引起的 HDFS NameNode JvmPauseMonitor 警告
- c - 二叉树 - 找到 K 最小元素
- python - Matplotlib 没有间歇性地绘图
- javascript - JSON 从 python json.dumps 到 javascript JSON.parse() 转义 \"
- python - 我想用matplotlib显示一个由tensorflow 2.0转换的灰度图
- python - 将列转换为 DateTime 时如何使用 Pandas .loc() 函数?
- forms - 输入带有密码管道的文本,ngModel 异常
- amazon-web-services - 将大型数据帧写入 S3 AWS 时出现内存错误
- python - opt.curve_fit 只有一个参数