Re: [GENERAL] Installing repmgr alongside PostgreSQL installed viaEnterpriseDB installer instead of repositories?

Поиск
Список
Период
Сортировка
От Vibhor Kumar
Тема Re: [GENERAL] Installing repmgr alongside PostgreSQL installed viaEnterpriseDB installer instead of repositories?
Дата
Msg-id E0641A53-E8BD-4DFF-8F73-F6EF3D97B5EE@gmail.com
обсуждение исходный текст
Ответ на Re: [GENERAL] Installing repmgr alongside PostgreSQL installed viaEnterpriseDB installer instead of repositories?  (Adrian Klaver <adrian.klaver@aklaver.com>)
Ответы Re: [GENERAL] Installing repmgr alongside PostgreSQL installed viaEnterpriseDB installer instead of repositories?  (Adrian Klaver <adrian.klaver@aklaver.com>)
Список pgsql-general

On May 11, 2017, at 10:17 AM, Adrian Klaver <adrian.klaver@aklaver.com> wrote:

On 05/11/2017 06:58 AM, Martin Goodson wrote:
Hello. First time poster, so please be gentle :)
I have a PostgreSQL 9.6 database cluster running on a standalone Redhat 7.2 (Maipo) server.
This may seem like a silly question. It probably *is* a silly question, so apologies in advance.
PostgreSQL was installed using the "EDB Postgres Standard" installer from EnterpriseDB - https://www.enterprisedb.com/software-downloads-postgres - and installed to a specific location - /db_<dbname>.  No repositories, nothing in a 'standard' place.
Output of pg_config is as follows:
BINDIR = /db_dbname/app/postgres/9.6.2-3/bin
DOCDIR = /db_dbname/app/postgres/9.6.2-3/doc/postgresql
HTMLDIR = /db_dbname/app/postgres/9.6.2-3/doc/postgresql
INCLUDEDIR = /db_dbname/app/postgres/9.6.2-3/include
PKGINCLUDEDIR = /db_dbname/app/postgres/9.6.2-3/include/postgresql
INCLUDEDIR-SERVER = /db_dbname/app/postgres/9.6.2-3/include/postgresql/server
LIBDIR = /db_dbname/app/postgres/9.6.2-3/lib
PKGLIBDIR = /db_dbname/app/postgres/9.6.2-3/lib/postgresql
LOCALEDIR = /db_dbname/app/postgres/9.6.2-3/share/locale
MANDIR = /db_dbname/app/postgres/9.6.2-3/share/man
SHAREDIR = /db_dbname/app/postgres/9.6.2-3/share/postgresql
SYSCONFDIR = /db_dbname/app/postgres/9.6.2-3/etc/postgresql
PGXS = /db_dbname/app/postgres/9.6.2-3/lib/postgresql/pgxs/src/makefiles/pgxs.mk
CONFIGURE = '--enable-debug' '--with-libs=/opt/local/Current/lib' '--with-includes=/opt/local/Current/include/libxml2:/opt/local/Current/include' '--prefix=/mnt/hgfs/pginstaller.auto/server/staging/linux-x64' '--with-ldap' '--with-openssl' '--with-perl' '--with-python' '--with-tcl' '--with-tclconfig=/opt/local/EnterpriseDB/LanguagePack/9.6/Tcl-8.5/lib' '--with-pam' '--enable-thread-safety' '--with-libxml' '--with-ossp-uuid' '--docdir=/mnt/hgfs/pginstaller.auto/server/staging/linux-x64/doc/postgresql' '--with-libxslt' '--with-libedit-preferred' '--with-gssapi' 'LD_LIBRARY_PATH=/opt/local/Current/lib' 'CFLAGS=-O2 -DMAP_HUGETLB=0x40000'
CC = gcc
CPPFLAGS = -DFRONTEND -D_GNU_SOURCE -I/opt/local/Current/include/libxml2 -I/opt/local/Current/include
CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -g -O2 -DMAP_HUGETLB=0x40000
CFLAGS_SL = -fpic
LDFLAGS = -L../../src/common -L/opt/local/Current/lib -Wl,--as-needed -Wl,-rpath,'/mnt/hgfs/pginstaller.auto/server/staging/linux-x64/lib',--enable-new-dtags LDFLAGS_EX =
LDFLAGS_SL =
LIBS = -lpgcommon -lpgport -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -ledit -lrt -lcrypt -ldl -lm
VERSION = PostgreSQL 9.6.2
I have now been tasked with putting repmgr onto this box and converting it from a standalone to a multiple node setup (I have two additional servers lurking in the background ready for use :) ).
Numerous articles on repmgr all seem to suggest it should be a relatively simply operation once the software is in place. Register the master. Clone standbys. Ought to be *relatively* straight-forward.
Unfortunately, I'm having problems at the first hurdle - putting the software in place. We initially tried installing from the postgres repository rpm - which insisted, of course, on installing PostgreSQL as well as repmgr in /usr/pgsql-9.6. Obviously not the right place for it given we're running our binaries from /db_dbname/app/postgres/9.6.2-3/bin
Is there a simple way to use repmgr from the package, perhaps by copying/linking files from that location to ours? (e.g. copying/linking some files from lib, bin, contrib, etc).
Or am I looking at having to compile the source? I'm told it should be 'simple' but I've not compiled much software from scratch on linux, so I'm a bit nervous about the prospect. Any advice would be welcome :)
Basically, am I going to be stuck compiling from source or is there a way around this?

Not sure how deep you are into your present situation. The only thing I can think of is to install Postgres using the PGDG repos and then migrating the data from the EDB install to the RPM install. You would probably have to change the port numbers, at least temporarily, while you do the migration. This way you could use the packaging system without resorting to work-arounds.

I don’t think Martin has to migrate database. He has installed PostgreSQL 9.6 using EDB one-click installer. I can see two options here:
1. Install PostgreSQL using RPM as mentioned by Adrian. Stop the PostgreSQL using one click installer binaries and start using RPM binary. After that Martin can install repmgr using RPM.
2. Compile repmgr with existing installation.

Thanks & Regards,
Vibhor Kumar
Blogs:https://vibhorkumar.blog

В списке pgsql-general по дате отправления:

Предыдущее
От: Igor Korot
Дата:
Сообщение: Re: [GENERAL]
Следующее
От: Adrian Klaver
Дата:
Сообщение: Re: [GENERAL] Installing repmgr alongside PostgreSQL installed viaEnterpriseDB installer instead of repositories?