记录一次编译安装Pg_rman缺少依赖包的问题
系统版本:CentOS版本6.10(最终版)
pg_rman:https://github.com/ossc-db/pg_rman
-bash-4.1$ make
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic backup.o catalog.o data.o delete.o dir.o init.o parray.o pg_rman.o restore.o show.o util.o validate.o xlog.o controlfile.o pgsql_src/pg_ctl.o pgut/pgut.o pgut/pgut-port.o -L/usr/pgsql-9.5/lib -lpgcommon -lpgport -L/usr/pgsql-9.5/lib -lpq -L/usr/pgsql-9.5/lib -Wl,--as-needed -L/usr/lib64 -Wl,--as-needed -Wl,-rpath,'/usr/pgsql-9.5/lib',--enable-new-dtags -Wl,--build-id -lpgcommon -lpgport -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lrt -lcrypt -ldl -lm -o pg_rman
/usr/bin/ld: cannot find -lpam
collect2: ld 返回 1
make: *** [pg_rman] 错误 1
解决方法:
yum install pam-devel
-bash-4.1$ make
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic backup.o catalog.o data.o delete.o dir.o init.o parray.o pg_rman.o restore.o show.o util.o validate.o xlog.o controlfile.o pgsql_src/pg_ctl.o pgut/pgut.o pgut/pgut-port.o -L/usr/pgsql-9.5/lib -lpgcommon -lpgport -L/usr/pgsql-9.5/lib -lpq -L/usr/pgsql-9.5/lib -Wl,--as-needed -L/usr/lib64 -Wl,--as-needed -Wl,-rpath,'/usr/pgsql-9.5/lib',--enable-new-dtags -Wl,--build-id -lpgcommon -lpgport -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lrt -lcrypt -ldl -lm -o pg_rman
/usr/bin/ld: cannot find -lssl
collect2: ld 返回 1
make: *** [pg_rman] 错误 1
解决方法:
yum -y install openssl*
-bash-4.1$ make
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic backup.o catalog.o data.o delete.o dir.o init.o parray.o pg_rman.o restore.o show.o util.o validate.o xlog.o controlfile.o pgsql_src/pg_ctl.o pgut/pgut.o pgut/pgut-port.o -L/usr/pgsql-9.5/lib -lpgcommon -lpgport -L/usr/pgsql-9.5/lib -lpq -L/usr/pgsql-9.5/lib -Wl,--as-needed -L/usr/lib64 -Wl,--as-needed -Wl,-rpath,'/usr/pgsql-9.5/lib',--enable-new-dtags -Wl,--build-id -lpgcommon -lpgport -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lrt -lcrypt -ldl -lm -o pg_rman
/usr/bin/ld: cannot find -lreadline
collect2: ld 返回 1
make: *** [pg_rman] 错误 1
解决方法:
yum install readline-devel
编译安装pg_rman,注意pg_rman需要和postgres数据库安装在同一台主机上,在安装pg_rman之前请自行安装postgres
su - postgres
cd /tmp
git clone https://github.com/ossc-db/pg_rman.git
cd pg_rman/
git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/REL9_2_STABLE
remotes/origin/REL9_3_STABLE
remotes/origin/REL9_4_STABLE
remotes/origin/REL9_5_STABLE
remotes/origin/REL9_6_STABLE
remotes/origin/REL_10_STABLE
remotes/origin/master
remotes/origin/pre-9.2
$ git checkout REL9_5_STABLE
Already on 'REL9_5_STABLE'
$ git status
$ On branch REL9_5_STABLE
nothing to commit, working directory clean
配置环境变量
su - postgres
cd /tmp/pg_rman
make
make install -bash-4.1$ cat ~/.bash_profile
PGDATA=/data_2/pg_server/data
export PGDATA
export PGHOME=/usr/pgsql-9.5
export PGHOME
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$PGHOME/bin
export PATH
export SRVLOG_PATH=/data_2/pg_server/data/pg_log
export ARCLOG_PATH=/data/dbBack/walbackup
export BACKUP_PATH=/data/dbBack/pg_rman_backupset source ~/.bash_profile make installcheck
执行回归测试,验证pg_rman是否可用
-bash-4.1$ make installcheck
/usr/pgsql-9.5/lib/pgxs/src/makefiles/../../src/test/regress/pg_regress --inputdir=./ --bindir='/usr/pgsql-9.5/bin' --dbname=contrib_regression init option showum backup_from_standby arc_srv_log_management
(using postmaster on Unix socket, default port)
============== dropping database "contrib_regression" ==============
Password:
DROP DATABASE
============== creating database "contrib_regression" ==============
Password:
CREATE DATABASE
Password:
ALTER DATABASE
============== running regression test queries ==============
test init ... Password:
ok
test option ... Password:
ok
test show ... Password:
ok
test delete ... Password:
ok
test purge ... Password:
ok
test backup ... Password:
ok
test backup_management ... Password:
ok
test restore ... Password:
ok
test restore_checksum ... Password:
ok
test backup_from_standby ... Password:
ok
test arc_srv_log_management ... Password:
ok ======================
All 11 tests passed.
======================
安装参考:https://yq.aliyun.com/articles/691338
记录一次编译安装Pg_rman缺少依赖包的问题的更多相关文章
- dpkg安装deb缺少依赖包的解决方法
[先贴出解决方案(基于Ubuntu)]: 使用dpkg -i *.deb 的时候出现依赖没有安装 使用apt-get -f -y install 解决依赖问题后再执行dpkg安装deb包 === ...
- Linux安装软件时缺少依赖包的简单较完美解决方法!
大家在linux下源码安装时,有木有经常碰到缺少这个包那个包的,然后不知所措?看到最近有几个筒子安装thrift,安装python因缺少依赖包而进行不下去了.我用的是红帽,装系统的时候习惯把所有的有的 ...
- CentOS6.5 安装Python 的依赖包
1.CentOS6.5 安装Python 的依赖包 yum groupinstall "Development tools"yum install zlib-devel bzip2 ...
- 保姆级别的RabbitMQ教程!一看就懂!(有安装教程,送安装需要的依赖包,送Java、Golang两种客户端教学Case)
保姆级别的RabbitMQ教程!一看就懂!(有安装教程,送安装需要的依赖包,送Java.Golang两种客户端教学Case) 目录 什么是AMQP 和 JMS? 常见的MQ产品 安装RabbitM ...
- vue 项目安装sass的依赖包
安装sass的依赖包 npm install --save-dev sass-loader //sass-loader依赖于node-sass npm install --save-dev node- ...
- 安装CDH第三方依赖包
安装CDH第三方依赖包: yum install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyr ...
- 编译安装php 5.5 缺少依赖包 及解决方案
必要时可以用 YUM 选择安装以下相关软件包: #yum install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel ...
- Liunx/RHEL6.5 Oracle11 安装记录[缺少依赖包的解决方案]
1.将镜像文件挂,如/mnt # mount -o loop rhel-server-6.1-x86_64-dvd.iso /mnt#这一步其实有很多实现方法,如可以将镜像文件中的Packages文件 ...
- rpm方式安装gcc缺少依赖项的解决方法
使用rpm方式安装gcc时,有时会报缺少依赖项: libmpfr.so.1 is needed by cpp-4.4.4-13.el6.i686 libppl.so.7 is needed by cl ...
随机推荐
- python入门之格式化输出
目录 扩展: 保留几位小数 一.占位符格式化输出 1.1 %s 1.2 %d 二..format()方式 三.f-string 扩展: 保留几位小数 保留两位小数 a = 12345.2487 pri ...
- [bug]—console 在某些机型下的隐藏坑
背景 我们的项目通过重写console对象上的方法实现日志上报的功能,截取代码片段如下: Class Logger() { debug() {}, info() {}, warn() {}, ... ...
- 基于Livy的Spark提交平台搭建与开发
为了方便使用Spark的同学提交任务以及加强任务管理等原因,经调研采用Livy比较靠谱,下图大致罗列一下几种提交平台的差别. 本文会以基于mac的单机环境搭建一套Spark+Livy+Hadoop来展 ...
- 移动端自适应rem的设置
一般所熟知的css样式大小单位有px,em. px:精确地描述元素大小,不随屏幕大小的变化而变化: em:相对于父元素的大小,如果有层层嵌套的话会导致这个值非常大或者非常小. 在写移动端页面的时候为了 ...
- 关于vuecli的一些问题
在vue打包之后,我们引入的css路径和js路径会变成绝对路径 需要在vue.config.js里面设置publicpath为"./" 同时在做前后端分离开发时,我们通常会用到ax ...
- stone2 [期望]
也许更好的阅读体验 \(\mathcal{Description}\) 有 \(n\) 堆石子,依次编号为 \(1, 2,\ldots , n\),其中第 \(i\) 堆有 \(a_i\) 颗石子 你 ...
- 解决h5版的uniapp请求跨域问题
uni项目里有个名为manifest.json文件 编辑manifest.json文件,找到h5选项,里面一般有个名为“devServer”索引,往这个索引中添加一个“proxy”或者编辑,值为请求域 ...
- Unity - LayerMask简析
本文简述了LayerMask的定义,后通过项目实战充分解析 LayerMask中的GetMask.LayerToName.NameToLayer 等函数的使用方法及其注意事项. 项目地址:3D坦克大战 ...
- 【JVM】记录一次线上SWAP偏高告警的故障分析过程
近期遇到一个堆外内存导致swap飙高的问题,这类问题比较罕见,因此将整个排查过程记录下来了 现象描述 最近1周线上服务器时不时出现swap报警(swap超过内存10%时触发报警,内存是4G,因此swa ...
- php 数组去空
1.preg_grep("/\S+/i", $data); 2.array_filter($data); 3.for($data $k = > $v) { if(!$v) u ...