Tutoriales

Cómo instalar PostgreSQL desde el código fuente en Linux

base de datos También conocido como postgres es un potente sistema de base de datos relacional de objetos de código abierto.Es una base de datos de nivel empresarial con características tales como registro de escritura anticipada para tolerancia a fallas, replicación asíncrona, control de concurrencia de múltiples versiones (MVCC), respaldo en línea/activo, recuperación de un punto en el tiempo, planificador/optimizador de consultas, espacios de tablas, etc. transacciones anidadas (savepoints), etc.

El grupo de desarrollo global de PostgreSQL lanzó la última versión 15.2 de Postgres el 9 de febrero de 2023.

Características de PostgreSQL

La nueva versión presenta lo siguiente:

  • replicación lógica: esta función permite la replicación de objetos de bases de datos individuales (ya sean filas, tablas o bases de datos seleccionadas) en servidores alternativos. Proporciona más control sobre la replicación de datos. Implementado mediante el uso del modelo publicador-suscriptor.
  • Confirmación de quórum para la replicación síncrona: En esta función, dbas ahora puede especificar la cantidad de esperas que confirman que se han realizado cambios en la base de datos para que los datos se consideren seguros para escribir.
  • Autenticación SCRAM-SHA-256: mejora la seguridad de la autenticación y el almacenamiento de contraseñas basadas en MD5 existentes.
  • Mejora de la ejecución de consultas en paralelo.
  • Particionamiento declarativo de tablas.
  • Soporte de búsqueda de texto completo para JSON y JSONB.

En este artículo, explicaremos cómo instalar PostgreSQL 15 Instalar desde la fuente en sistemas Linux. Aquellos que buscan una instalación fácil desde el administrador de paquetes de distribución pueden seguir la guía a continuación.

Instalar PostgreSQL desde la fuente

como publicar base de datos es una base de datos de código abierto, que se puede construir a partir del código fuente de acuerdo con las necesidades/requisitos de cada uno. Podemos personalizar el proceso de compilación e instalación proporcionando una o más opciones de línea de comandos para varias funciones adicionales.

La principal ventaja de instalar desde la fuente es que se puede personalizar mucho durante la instalación.

1. Primero instale los requisitos previos necesarios, p. CCG, leer desarrollo de línea, y zlib-devel Use el administrador de paquetes como se muestra.

# yum install gcc zlib-devel readline-devel     [On RHEL/CentOS]
# apt install gcc zlib1g-dev libreadline6-dev   [On Debian/Ubuntu]

2. Descargue el archivo tar de origen del sitio oficial sitio web postgres Utilice el siguiente comando wget directamente en su sistema.

# wget 

3. Extraiga el archivo tarball descargado usando el comando tar.un nuevo directorio llamado postgresql-15.2 se creará.

# tar -xvf postgresql-15.2.tar.bz2
# cd postgresql-15.2
# ls -l
salida de muestra
total 780
-rw-r--r--  1 1107 1107    397 Feb  6 16:39 aclocal.m4
drwxrwxrwx  2 1107 1107   4096 Feb  6 16:50 config
-rwxr-xr-x  1 1107 1107 601519 Feb  6 16:39 configure
-rw-r--r--  1 1107 1107  89258 Feb  6 16:39 configure.ac
drwxrwxrwx 61 1107 1107   4096 Feb  6 16:50 contrib
-rw-r--r--  1 1107 1107   1192 Feb  6 16:39 COPYRIGHT
drwxrwxrwx  3 1107 1107     87 Feb  6 16:50 doc
-rw-r--r--  1 1107 1107   4264 Feb  6 16:39 GNUmakefile.in
-rw-r--r--  1 1107 1107    277 Feb  6 16:39 HISTORY
-rw-r--r--  1 1107 1107  63842 Feb  6 16:51 INSTALL
-rw-r--r--  1 1107 1107   1875 Feb  6 16:39 Makefile
-rw-r--r--  1 1107 1107   1213 Feb  6 16:39 README
drwxrwxrwx 16 1107 1107   4096 Feb  6 16:51 src

4. El siguiente paso en el proceso de instalación es configurar el código fuente descargado seleccionando opciones de acuerdo a sus necesidades.usar ./configure --help Obtenga ayuda con varias opciones.

# ./configure --help

`configure' configures PostgreSQL 15.2 to adapt to many kinds of systems.

Usage: ./configure [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE.  See below for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.

Configuration:
  -h, --help              display this help and exit
      --help=short        display options specific to this package
      --help=recursive    display the short help of all the included packages
  -V, --version           display version information and exit
  -q, --quiet, --silent   do not print `checking ...' messages
      --cache-file=FILE   cache test results in FILE [disabled]
  -C, --config-cache      alias for `--cache-file=config.cache'
  -n, --no-create         do not create output files
      --srcdir=DIR        find the sources in DIR [configure dir or `..']

Installation directories:
  --prefix=PREFIX         install architecture-independent files in PREFIX
                          [/usr/local/pgsql]
  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
                          [PREFIX]
....

5. Ahora cree un directorio donde se instalarán los archivos de postgres y use la opción de prefijo en la configuración.

# mkdir /opt/PostgreSQL
# ./configure --prefix=/opt/PostgreSQL
salida de muestra
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking which template to use... linux
checking whether NLS is wanted... no
checking for default port number... 5432
checking for block size... 8kB
checking for segment size... 1GB
checking for WAL block size... 8kB
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for gcc option to accept ISO C99... none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for gawk... gawk
checking whether gcc supports -Wdeclaration-after-statement, for CFLAGS... yes
checking whether gcc supports -Werror=vla, for CFLAGS... yes
checking whether gcc supports -Werror=unguarded-availability-new, for CFLAGS... no
....

Cree PostgreSQL desde la fuente

6. Una vez configurado, a continuación, comenzaremos a construir PostgreSQL con lo siguiente Orden.

# make

Una vez que se complete el proceso de compilación, ahora instale postgresql con el siguiente comando.

# make install

PostgreSQL 15 instalado /optar/postgresql Tabla de contenido.

Crear usuario Postgres

7. Ahora cree un usuario y un directorio de postgres para usar como datos El directorio utilizado para inicializar el clúster de base de datos. El propietario de este directorio de datos debe ser un usuario de postgres con permisos 700 y también establecer la ruta al binario de postgresql para nuestra comodidad.

# useradd postgres
# passwd postgres
# mkdir -p /pgdatabase/data
# chown -R postgres. /pgdatabase/data
# echo 'export PATH=$PATH:/opt/PostgreSQL/bin' > /etc/profile.d/postgres.sh
# source /etc/profile.d/postgres.sh 

Inicializar la base de datos de Postgres

8. Ahora inicialice la base de datos usando el siguiente comando publicar base de datos Antes de usar cualquier publicar base de datos Orden.

# su postgres
$ initdb -D /pgdatabase/data/ -U postgres -W

Dónde -D es la ubicación de este clúster de base de datos, o podemos decir que es el directorio de datos donde queremos inicializar el clúster de base de datos, -U Para el nombre de superusuario de la base de datos y -W Solicitud de contraseña para el superusuario de db.

Inicializar la base de datos de Postgres

Para más información y opciones podemos consultar initdb --help.

9. Después de inicializar la base de datos, inicie el clúster de la base de datos o, si necesita cambiar el puerto o la dirección del servidor de escucha, edite /pgdatabase/data/postgresql.conf Archivos en el directorio de datos del servidor de la base de datos.

Configurar el puerto PostgreSQL
Configurar el puerto PostgreSQL
$ pg_ctl -D /pgdatabase/data/ start
Inicie la base de datos de Postgres
Inicie la base de datos de Postgres

10 Después de iniciar la base de datos, verifique el estado del proceso del servidor de Postgres mediante los siguientes comandos ps y netstat.

$ ps -ef |grep -i postgres
$ netstat -apn |grep -i 51751
Verificar base de datos PostgreSQL
Verificar base de datos PostgreSQL

Podemos ver que el clúster de la base de datos funciona bien y el registro de inicio se puede encontrar en la ubicación especificada -l Opciones al iniciar el clúster de base de datos.

11 Ahora conéctese al clúster de la base de datos y cree la base de datos con el siguiente comando.

$ psql -p 51751
postgres=# create database test;
postgres=# \l to list all databases in cluster
postgres=# \q to quit form postgres console
Conectarse a la base de datos PostgreSQL
Conectarse a la base de datos PostgreSQL

¡Eso es todo! Estén atentos a Tecmint en nuestros próximos artículos donde cubriré la configuración, configuración de replicación e instalación de la herramienta pgAdmin.

Si aprecia el trabajo que hacemos en TecMint, debe considerar:

TecMint es el sitio comunitario de más rápido crecimiento y más confiable para artículos, guías y libros de Linux de cualquier tipo en la web. ¡Millones de personas visitan TecMint! Busque o explore miles de artículos publicados disponibles gratuitamente para todos.

Si le gusta lo que está leyendo, considere ofrecernos una taza de café (o 2) para agradecernos.

Apoyanos

Agradecemos su apoyo interminable.

LEER  Epic Games despide a 830 personas porque "gasta mucho más dinero del que ganamos"

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba