기존 환경에 영향을 주지 않는 pgdump 설치

3549 단어 PostgreSQLtech

개요


기존 환경에 영향을 주지 않는 pgdump의 특정 버전을 설치하는 것을 잊었습니다.
※ PostgreSQL 환경에 대한 이야기

배경.


DB의 전체 테이블을 대상으로 특정 문자열의 데이터가 있는지 조사하는 일은 종종 있다.저는있어요.
그때의 접근법으로도 SQL로 하는 방법이 있었지만, 덤프grep를 얻기 때문에 저는 이쪽을 자주 사용했습니다.
그리고 사용해야 한다pg_dump. 그러나 DB가 RDS 등을 사용한 경우 연결 소스와pg_dump의 버전이 다르면 오류가 발생할 수도 있다.
pg_dump: server version: 9.6.19; pg_dump version: 9.5.3
pg_dump: aborting because of server version mismatch
※ 버전은 적당한 수치
기본적으로 서버 버전은 변경할 수 없기 때문에 pg_dump의 버전에 맞춰야 하지만 존재하는 환경은 접촉하고 싶지 않은 심리이다.
따라서 기존 환경pg_dump의 배경은 서버 버전과 일치하는 설치pg_dump를 원한다는 것이다.
어렵기 때문에 먼저 절차를 남겨 두다.

절차.


1. PostgreSQL 소스 가져오기


특정 버전의 pg_dump를 소스에서 설치합니다.
https://www.postgresql.org/ftp/source/
이 예에서 서버 버전은 9.6.19이므로 이 버전을 가져옵니다.
https://www.postgresql.org/ftp/source/v9.6.19/
서버에서 직접 얻는 것이 비교적 쉽기 때문에 상기 지정tar.gz에서 링크를 미리 복사합니다.
# お作法に則り /usr/local/src へ
cd /usr/local/src
wget https://ftp.postgresql.org/pub/source/v9.6.19/postgresql-9.6.19.tar.gz

# 解凍
tar xzf postgresql-9.6.19.tar.gz
cd postgresql-9.6.19
※ 서버의 외부 통신 허용(https)

2. 설치


원본 프로그램을 설치한 오래된 물건이다.
# インストール先をつくっておく
mkdir /usr/local/postgresql-9.6.19/

# いつもの
# 上記インストール先を指定
./configure --prefix=/usr/local/postgresql-9.6.19/ --with-pgport=5432
make
make install

3. 접속 확인


설치pg_dump를 지정하고 덤프가 가능한지 확인하면 완료됩니다.
/usr/local/postgresql-9.6.18/bin/pg_dump --data-only --inserts -U <user> -h <DB_HOST> <DB_NAME> >db.dump

참고 자료

  • https://www.it-swarm-ja.tech/ja/postgresql/모든 테이블에서 특정 값을 찾는 방법 /971573860/
  • https://qiita.com/takenori-ooba/items/fa0377fb82ed599d995f
  • 좋은 웹페이지 즐겨찾기