[LINUX] Installieren Sie PostgreSQL aus dem Quellcode unter CentOS

Hintergrund

Ich wollte es einfach mit der Paketverwaltung installieren (yum, apt usw.), aber ich hatte die Möglichkeit, PostgreSQL unter CentOS 7.5 zum ersten Mal seit ungefähr 20 Jahren über den Quellcode zu installieren, also machte ich mir eine Notiz.

Umgebung

# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

Verfahren

Vorläufig konnte ich dies nach folgendem Verfahren tun.

Kontoerstellung

Bereiten Sie ein dediziertes Konto für die Verwendung von PostgreSQL vor. Erstellen Sie den Kontonamen "postgres", indem Sie auch das Ausgangsverzeichnis angeben.

# useradd -m -d /home/postgres postgres

Ich habe auch ein Passwort festgelegt.

# passwd postgres
Ändern Sie das Passwort für Benutzer postgres.
Neues Kennwort:
Bitte geben Sie Ihr neues Passwort erneut ein:
passwd:Alle Authentifizierungstoken wurden erfolgreich erneuert.

Vorbereitung der notwendigen Werkzeuge

Bereiten Sie die Tools vor, die zum Abrufen des Quellcodes und zum Kompilieren erforderlich sind. (Ich werde es auf jeden Fall hier mit lecker genießen!)

# yum -y groupinstall Development Tools
# yum -y install readline-devel
# yum -y install zlib-devel zlib wget vim

Holen Sie sich den PostgreSQL-Quellcode

Hol es dir mit wget. Ich habe diesmal v12.4 verwendet, weil ich die Versionsliste auf der offiziellen Website überprüfen konnte. PostgreSQL File Browser

# wget https://ftp.postgresql.org/pub/source/v12.4/postgresql-12.4.tar.gz
...
100%[==========================================================>] 27,070,070   564KB/s Zeit 72s
2020-09-30 17:46:23 (365 KB/s) - `postgresql-12.4.tar.gz'Speichern unter[27070070/27070070]

Extraktion des Quellcodes

Da es mit Teer gehärtet ist, dehnt es sich sanft aus.

# tar xvfz postgresql-12.4.tar.gz
...
postgresql-12.4/configure.in
postgresql-12.4/INSTALL

Kompilierungsarbeit

Kompilieren des extrahierten Quellcodes. (Ich fühle mich nostalgisch, nachdem ich zum ersten Mal seit 20 Jahren gearbeitet habe)

# cd postgresql-12.4
# ./configure
# make
# make install
...
PostgreSQL installation complete.

Konten wechseln

Nach den Installationsarbeiten wird der Vorgang von PostgreSQL mit dem zuvor erstellten Konto "postgres" ausgeführt.

# exit
login:postgres
Password:
$ 

Umgebungsvariablen festlegen

Da der Pfad zum installierten PostgreSQL nicht übergeben wird, bearbeiten Sie .bash_profile usw. Legen Sie es in Ihren Pfad.

$ vim .bash_profile

Bearbeiteter Inhalt ↓

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs
PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH=/usr/local/pgsql/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/pgsql/lib:$LD_LIBRARY_PATH

Abmelden → Sie können sich erneut anmelden, dies war jedoch problematisch. Laden Sie es daher erneut mit der Quelle.

$ source .bash_profile

Überprüfen Sie, ob PostgreSQL-bezogene Befehle vorhanden sind.

$ which psql
/usr/local/pgsql/bin/psql

$ which initdb
/usr/local/pgsql/bin/initdb

Ich bin auf dem Weg!

Versuchen Sie, einen Datenbankcluster zu erstellen.

Im Fall von PostgreSQL muss zuerst ein Datenbankcluster erstellt werden. Erstellen Sie ihn daher, während Sie das Verzeichnis angeben.

$ initdb -D /home/postgres/data --no-locale
...
Success. You can now start the database server using:
    pg_ctl -D /home/postgres/data -l logfile start

$ ls -l /home/postgres
4 insgesamt
drwx------.19 postgres postgres 4096 30. September 18:12 data

Versuchen Sie, einen Datenbankcluster zu starten.

Geben Sie den erstellten Datenbankcluster an und starten Sie PostgreSQL.

$ pg_ctl start -D /home/postgres/data
...
 done
server started
$ 

Stellen Sie mit psql eine Verbindung zur Datenbank her und drücken Sie die SQL-Anweisung!

Da es gestartet ist, werde ich versuchen, die SQL-Anweisung zu treffen. Verbinde dich vorerst mit psql.

$ psql
psql (12.4)
Type "help" for help.
postgres=#

Es scheint, dass Sie SQL-Anweisungen eingeben können, sodass Sie sie als Testversion eingeben können.

postgres=# SELECT now();
              now
-------------------------------
 2020-09-30 18:20:14.031968+09
(1 row)
postgres=# \q
$  

erledigt. Es ist eine Weile her> PostgreSQL

Zusammenfassung

Um ehrlich zu sein, ist es einfach, sich mit einem Paketverwaltungstool vorzubereiten. Wenn Sie aus irgendeinem Grund aus dem Quellcode kompilieren müssen, müssen Sie arbeiten, während Sie sich das Handbuch ansehen. Lassen Sie uns also unser Bestes geben!

Kapitel 16 Installation aus Quellcode psql document

Recommended Posts

Installieren Sie PostgreSQL aus dem Quellcode unter CentOS
Installieren Sie ansible aus dem Quellcode
Installieren Sie Faiss unter CentOS 7
Erstellen Sie PostgreSQL aus dem Quellcode
Installieren Sie Python von der Quelle
Installieren Sie Python3.4 unter CentOS 6.6
Installieren Sie Apache 2.4.41 von der Quelle
Installieren Sie mecab-python unter CentOS
Installieren Sie Python 2.7.3 unter CentOS 5.4
Installieren Sie awscli auf centos7
Installieren Sie Chainer unter CentOS 6.7
Installieren Sie die ImageMagick-6.2.x-Serie unter CentOS7.7
Installieren Sie Python 3.8 unter CentOS 7 (SCL)
wsl Installiere PostgreSQL unter Ubuntu 18.04
Installieren Sie Chrome unter der CentOS 7-Serie
Installieren Sie Python 3.8 unter CentOS 8 (AppStream)
Installieren von Apache Maven (von der Quelle)
Schritte zum Installieren von MySQL 8.0 unter CentOS 8.1
Himbeer Pi 4 Centos7 auf Docker installieren
Installieren Sie Python von der Quelle mit Ansible
Schritte zum Installieren von VirtualBox unter CentOS
Installieren Sie Java (Oracle JDK14) unter CentOS7
So installieren Sie PyPy unter CentOS
So installieren Sie TensorFlow unter CentOS 7
Installieren Sie pip unter CentOS7. Auch iPython.
Installieren Sie VirtualBox unter CentOS 7 unter VirtualBox (Mac + Vagrant)
Installieren Sie Python unter CentOS mit Pyenv
Kompilieren und installieren Sie Git aus dem Quellcode.
So installieren Sie Maven unter CentOS
Studienhinweis 9_Installieren Sie Jenkins unter CentOS7
Installieren Sie Python unter CentOS mit pyenv
Aktivieren Sie den Befehl sar unter CentOS (installieren Sie sysstat).
Herstellen einer Verbindung von Python zu MySQL unter CentOS 6.4
Installieren Sie Pleasant unter Ubuntu 20.04 (.NetCore3.1 / PostgreSQL-Version)
Fluss vom Quellcode zum Erstellen des Ausführungsformats
So installieren Sie Apache (httpd) unter CentOS7
So installieren Sie Eclipse GlassFish 5.1.0 unter CentOS7
So installieren Sie Apache (httpd) unter CentOS8
Installieren Sie pyenv und rbenv systemweit unter CentOS
Installieren Sie die neueste Version von Apache httpd 2.4 von der Quelle unter Cent OS 8
Installieren Sie den Openstack-Client von Pip, damit unter CentOS7 kein Fehler angezeigt wird
Sprechen Sie vom Code auf dem Mac (eSpeak, OpenJTalk)
[Ansible] Installieren Sie dnf unter Centos7 mit dem Python3-Interpreter
CentOS8 --Installieren - Django
Von conda-forge installieren
Starten Sie CentOS 8 von Windows 10 mit Wake On LAN
Installieren Sie vim7.3 (+ python2.4) von der Quelle (kompatibel mit Gundo.vim)
[Fehler] Installieren Sie den Stapelüberlauf-Klon Askbot unter CentOS 6.4
CentOS8 --Installieren - Python3
[Python] Lesen des Django-Quellcodes Ansicht ab Null ①
Installieren Sie Grub auf dem USB-Speicher (UEFI) ~ Booten Sie Linux von Grub auf dem USB-Speicher ~
So installieren Sie Git GUI und Gitk unter CentOS
Installieren Sie Mecab auf Marvericks
Installieren Sie Tensorflow auf dem Mac
Installieren Sie Python auf der WSL
Installieren Sie pip auf Mavericks
Installieren Sie Python auf Pidora.
Installieren Sie mongodb auf termux
Installieren Sie Docker auf Fedora31