{"id":9254,"date":"2019-10-17T14:35:58","date_gmt":"2019-10-17T12:35:58","guid":{"rendered":"https:\/\/blog.hostinger.io\/co-tutoriales\/?p=9254"},"modified":"2026-03-10T16:44:17","modified_gmt":"2026-03-10T15:44:17","slug":"instalar-postgresql-ubuntu","status":"publish","type":"post","link":"\/co\/tutoriales\/instalar-postgresql-ubuntu\/","title":{"rendered":"C\u00f3mo instalar PostgreSQL en Ubuntu y uso efectivo de bases de datos"},"content":{"rendered":"<p>PostgreSQL es un sistema de gesti&oacute;n popular de bases de datos relacionales (RDBMS) de c&oacute;digo abierto, conocido por su escalabilidad y eficacia en el manejo de grandes cantidades de datos.<\/p><p>Debido a su alto rendimiento, PostgreSQL es ideal para sitios web o aplicaciones de grandes empresas. Tambi&eacute;n admite varios tipos de datos y lenguajes de programaci&oacute;n, como PHP y Python.<\/p><p>En este tutorial, te explicaremos c&oacute;mo instalar PostgreSQL en <strong>Ubuntu 22.04 <\/strong>y versiones posteriores. Tambi&eacute;n cubriremos el proceso de instalaci&oacute;n de pgAdmin y las soluciones a problemas comunes de PostgreSQL.<\/p><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/assets.hostinger.com\/content\/tutorials\/pdf\/Linux-Commands-Cheatsheet-ES.pdf\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" width=\"1024\" height=\"283\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2022\/12\/Linux-cheat-sheet-ES.png\/w=1024,h=1024,fit=scale-down\" alt=\"\" class=\"wp-image-26004\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2022\/12\/Linux-cheat-sheet-ES.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2022\/12\/Linux-cheat-sheet-ES.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2022\/12\/Linux-cheat-sheet-ES.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2022\/12\/Linux-cheat-sheet-ES.png\/w=768,fit=scale-down 768w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2022\/12\/Linux-cheat-sheet-ES.png\/w=1536,fit=scale-down 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><p>\n<div class=\"protip\"><div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                   &iquest;Qu&eacute; es PostgreSQL?\n                <\/p>\n            <\/div>\n            <p class=\"protip__content\"><\/p><p>PostgreSQL es un sistema de gesti&oacute;n de bases de datos relacionales (SGBDR) popular por su rendimiento. A diferencia de un SGBD est&aacute;ndar, organiza los datos en una estructura l&oacute;gica para un acceso m&aacute;s eficaz. Altamente eficiente y capaz de manejar muchas consultas, la soluci&oacute;n de base de datos es excelente para grandes empresas. Adem&aacute;s, es gratuito, de c&oacute;digo abierto y compatible con varios tipos de datos.<\/p><\/div><\/p><h2 class=\"wp-block-heading\" id=\"h-como-instalar-postgresql-en-ubuntu\">C&oacute;mo instalar PostgreSQL en Ubuntu<\/h2><p>Antes de proceder, aseg&uacute;rate de que tu <a href=\"\/co\/servidor-vps\">servidor privado virtual (VPS)<\/a> ejecuta <strong>Ubuntu 22.04 <\/strong>o posterior. De lo contrario, sigue nuestra gu&iacute;a para <a href=\"https:\/\/support.hostinger.com\/es\/articles\/4965922-como-cambiar-el-sistema-operativo-de-tu-vps\" target=\"_blank\" rel=\"noreferrer noopener\">cambiar el sistema operativo en el VPS de Hostinger<\/a>.<\/p><h3 class=\"wp-block-heading\" id=\"h-1-instala-postgresql\">1. Instala PostgreSQL<\/h3><p>La instalaci&oacute;n de PostgreSQL implica ejecutar <a href=\"\/co\/tutoriales\/linux-comandos\/\">comandos Linux<\/a> en tu m&aacute;quina. En un sistema local, ejec&uacute;talos directamente a trav&eacute;s de Terminal, el s&iacute;mbolo del sistema de Linux.<\/p><p>Para una m&aacute;quina remota como VPS, con&eacute;ctate <a href=\"\/co\/tutoriales\/conectar-usando-terminal-putty-ssh\/\">usando una aplicaci&oacute;n SSH<\/a> o Terminal. Los usuarios de Hostinger pueden encontrar las credenciales de acceso a su m&aacute;quina remota navegando hasta el <strong>men&uacute;<\/strong> <strong>general de VPS <\/strong>en hPanel.<\/p><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"596\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2026\/01\/wordpress-page-builders.png\/public\" alt=\"Vista general del VPS de hPanel\" class=\"wp-image-47093\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2026\/01\/wordpress-page-builders.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2026\/01\/wordpress-page-builders.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2026\/01\/wordpress-page-builders.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2026\/01\/wordpress-page-builders.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><p>Puedes instalar los paquetes PostgreSQL de Ubuntu desde el repositorio local o utilizando el gestor de paquetes APT. Te recomendamos esto &uacute;ltimo para asegurarte de que obtienes la &uacute;ltima versi&oacute;n.<\/p><figure class=\"wp-block-image size-large\"><a href=\"\/co\/servidor-vps\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=1024,h=1024,fit=scale-down\" alt=\"\" class=\"wp-image-29287\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=768,fit=scale-down 768w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=1536,fit=scale-down 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><h4 class=\"wp-block-heading\" id=\"h-opcion-1-instalacion-desde-el-repositorio-apt\">Opci&oacute;n 1: instalaci&oacute;n desde el repositorio APT<\/h4><p>El m&eacute;todo m&aacute;s popular para instalar PostgreSQL en Ubuntu es desde el repositorio oficial a trav&eacute;s del <strong>gestor de paquetes APT<\/strong>. Aqu&iacute; tienes los pasos para hacerlo:<\/p><ol class=\"wp-block-list\">\n<li>Ejecuta estos comandos para importar la clave desde el repositorio oficial de PostgreSQL al gestor de paquetes APT:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo sh -c 'echo \"deb http:\/\/apt.postgresql.org\/pub\/repos\/apt $(lsb_release -cs)-pgdg main\" &gt; \/etc\/apt\/sources.list.d\/pgdg.list'\n\nwget --quiet -O - https:\/\/www.postgresql.org\/media\/keys\/ACCC4CF8.asc | sudo gpg -<\/pre><ol start=\"2\" class=\"wp-block-list\">\n<li>Actualiza APT para sincronizar todos los repositorios utilizando este comando:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt update<\/pre><ol start=\"3\" class=\"wp-block-list\">\n<li>Instala la &uacute;ltima versi&oacute;n de PostgreSQL con APT y privilegios sudo:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt-get -y install postgresql<\/pre><ol start=\"4\" class=\"wp-block-list\">\n<li>Para confirmar la instalaci&oacute;n, ejecuta este comando:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo -u postgres psql<\/pre><ol start=\"5\" class=\"wp-block-list\">\n<li>Introduce la sentencia de consulta de la versi&oacute;n de PostgreSQL:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">SELECT version();<\/pre><p>        <div class=\"protip\">\n            <div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                    Consejo profesional                <\/p>\n            <\/div>\n            <p class=\"protip__content\">Para instalar una versi&oacute;n concreta, a&ntilde;ade el n&uacute;mero en tu comando, por ejemplo <strong>sudo apt-get -y install postgresql-12<\/strong>. En este ejemplo, el comando instalar&aacute; la versi&oacute;n 12 de PostgreSQL.<\/p>\n                    <\/div>\n        <\/p><h4 class=\"wp-block-heading\">Opci&oacute;n 2: instalaci&oacute;n utilizando el repositorio local de Ubuntu<\/h4><p>El m&eacute;todo alternativo de instalaci&oacute;n de PostgreSQL utiliza el repositorio local de <a href=\"\/tutorials\/what-is-ubuntu\/\">Ubuntu<\/a>. Aqu&iacute; tienes los pasos:<\/p><ol class=\"wp-block-list\">\n<li>Ejecuta este comando para actualizar el repositorio de Ubuntu:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt-get update<\/pre><ol start=\"2\" class=\"wp-block-list\">\n<li>Verifica el <strong>repositorio apt PostgreSQL <\/strong>disponible utilizando este comando:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt show postgresql<\/pre><ol start=\"3\" class=\"wp-block-list\">\n<li>Ejecuta este comando para instalar la &uacute;ltima versi&oacute;n disponible. En nuestro caso, es <strong>la versi&oacute;n 12.15<\/strong>:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt install postgresql postgresql-contrib<\/pre><ol start=\"4\" class=\"wp-block-list\">\n<li>Para comprobar si la instalaci&oacute;n de PostgreSQL se ha realizado correctamente, ejecuta lo siguiente:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo -u postgres psql<\/pre><ol start=\"5\" class=\"wp-block-list\">\n<li>A continuaci&oacute;n, ejecuta este comando para comprobar la versi&oacute;n actual de PostgreSQL:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">SELECT version();<\/pre><p>La l&iacute;nea de comandos deber&iacute;a mostrar que la <strong>versi&oacute;n 12.15 del servidor PostgreSQL <\/strong>se ha instalado correctamente, de forma similar a esto:<\/p><figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/l%C3%ADnea-de-comandos.png\/public\" alt=\"Ejemplo de l&iacute;nea de comandos sobre como instalar postgresql en Ubuntu\" class=\"wp-image-41286\"><\/figure><h3 class=\"wp-block-heading\">2. Comprueba el estado de PostgreSQL<\/h3><p>Tras instalar PostgreSQL, comprueba si est&aacute; habilitado y activo. Utiliza la utilidad de comandos <strong>systemctl <\/strong>o <strong>service <\/strong>para verificar el estado del servicio:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo service postgresql status\n\nsudo systemctl status postgresql<\/pre><p>Si PostgreSQL est&aacute; activado, en tu l&iacute;nea de comandos aparecer&aacute; <strong>activo <\/strong>y <strong>cargado<\/strong>, de forma similar a la siguiente:<\/p><figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/l%C3%ADnea-de-comandos-aparecer%C3%A1-activo-y-cargado.png\/public\" alt=\"L&iacute;nea de comandos son PostgreSQL activado\" class=\"wp-image-41288\"><\/figure><p>Los usuarios de Hostinger tambi&eacute;n pueden comprobar si PostgreSQL se est&aacute; ejecutando preguntando al asistente de IA Kodee. Simplemente introduce &ldquo;Comprobar el estado del servicio postgresql en mi VPS&rdquo; y Kodee mostrar&aacute; el estado del servicio.<\/p><figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/32\/2019\/10\/ejemplo-kodee-ia.png\/public\" alt=\"Ejemplo de uso de Kodee \" class=\"wp-image-46131\"><\/figure><p>Adem&aacute;s del estado del servicio, comprueba si PostgreSQL est&aacute; preparado para aceptar una conexi&oacute;n mediante este comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo pg_isready<\/pre><h3 class=\"wp-block-heading\">3. Conectate a PostgreSQL<\/h3><p>Durante la instalaci&oacute;n, PostgreSQL crea autom&aacute;ticamente el rol <strong>postgres <\/strong>por defecto para iniciar sesi&oacute;n en la base de datos. Para cambiar a este usuario, ejecuta el siguiente comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo su - postgres<\/pre><p>Tu l&iacute;nea de comandos debe comenzar ahora con <strong>postgres<\/strong>. Para conectarte a la base de datos PostgreSQL, utiliza el int&eacute;rprete de comandos PostgreSQL con lo siguiente:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo psql<\/pre><p>El comando <strong>psql <\/strong>crear&aacute; una sesi&oacute;n en la base de datos por defecto. Si no encuentras el comando, instala manualmente el cliente PostgreSQL utilizando este comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt-get install postgresql-cliente<\/pre><p>Para comprobar el estado de la conexi&oacute;n, ejecuta este comando desde el prompt de PostgreSQL:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">conninfo<\/pre><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"958\" height=\"72\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/conninfo.png\/public\" alt=\"Comprobar estado de la conexi&oacute;n a PostgreSQL\" class=\"wp-image-41289\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/conninfo.png\/w=958,fit=scale-down 958w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/conninfo.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/conninfo.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/conninfo.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 958px) 100vw, 958px\" \/><\/figure><p>Para salir del prompt de PostgreSQL y volver al usuario normal del sistema, utiliza el comando <strong>exit<\/strong>. Mientras tanto, usa<strong> q <\/strong>para salir de la sesi&oacute;n interactiva de la base de datos.<\/p><h3 class=\"wp-block-heading\">4. Cambia la contrase&ntilde;a de usuario<\/h3><p>Cambiar la contrase&ntilde;a predeterminada del rol <strong>postgres <\/strong>es esencial para mejorar la seguridad de la base de datos. A continuaci&oacute;n te explicamos c&oacute;mo hacerlo:<\/p><ol class=\"wp-block-list\">\n<li>Activa el indicador PostgreSQL con este comando:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo -u postgres psql<\/pre><ol start=\"2\" class=\"wp-block-list\">\n<li>Ejecuta esta sentencia para cambiar la contrase&ntilde;a de la cuenta <strong>postgres<\/strong>. No olvides sustituir <strong>NewPassword <\/strong>por tu contrase&ntilde;a real:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">ALTER USER postgres PASSWORD 'NewPassword';<\/pre><ol start=\"3\" class=\"wp-block-list\">\n<li>Comprueba si el cambio se ha aplicado correctamente utilizando el siguiente comando:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">p<\/pre><ol start=\"4\" class=\"wp-block-list\">\n<li>Reinicia el servicio PostgreSQL con este comando:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo service postgresql restart<\/pre><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"155\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/sudo-service-postgresql-restart.png\/public\" alt=\"Ejemplo de cambio de contrase&ntilde;a en PostgreSQL\" class=\"wp-image-41290\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/sudo-service-postgresql-restart.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/sudo-service-postgresql-restart.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/sudo-service-postgresql-restart.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/sudo-service-postgresql-restart.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><h3 class=\"wp-block-heading\">5. Crea un usuario en PostgreSQL<\/h3><p>Para gestionar el acceso a la base de datos y garantizar una organizaci&oacute;n adecuada de los datos, necesitar&aacute;s varios usuarios PostgreSQL. La forma m&aacute;s sencilla de crear uno es utilizar el <strong>modo interactivo<\/strong>. Aqu&iacute; los pasos:<\/p><ol class=\"wp-block-list\">\n<li>Cambia al usuario <strong>postgres<\/strong>:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo su - postgres<\/pre><ol start=\"2\" class=\"wp-block-list\">\n<li>Ejecuta este comando para crear un nuevo usuario:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">createuser --interactive<\/pre><ol start=\"3\" class=\"wp-block-list\">\n<li>Introduce el nombre de la nueva cuenta PostgresQL. Para este tutorial, es <strong>TheNewUser<\/strong>.<\/li>\n\n\n\n<li>Para validar el nuevo rol, inicia sesi&oacute;n en PostgreSQL con la cuenta <strong>postgres<\/strong>:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo -u postgres psql<\/pre><ol start=\"5\" class=\"wp-block-list\">\n<li>Comprueba todos los usuarios con el siguiente comando:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">du<\/pre><p><div class=\"announcement-block announcement-block--important\">\n            <span class=\"announcement-block__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                          d=\"M12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5C6.20101 1.5 1.5 6.20101 1.5 12C1.5 17.799 6.20101 22.5 12 22.5ZM13.637 7.65198C13.637 6.74791 12.9041 6.01501 12 6.01501C11.0959 6.01501 10.363 6.74791 10.363 7.65198C10.5335 9.53749 10.875 13.383 10.875 13.383C10.875 14.0043 11.3787 14.508 12 14.508C12.6213 14.508 13.125 14.0043 13.125 13.383V13.38L13.637 7.65198ZM11.9927 15.714C11.3714 15.714 10.8677 16.2177 10.8677 16.839C10.8677 17.4603 11.3714 17.964 11.9927 17.964H12.0073C12.6286 17.964 13.1323 17.4603 13.1323 16.839C13.1323 16.2177 12.6286 15.714 12.0073 15.714H11.9927Z\"\n                          fill=\"#FEA419\"\/>\n                <\/svg>\n                Important\n            <\/span>\n            <p class=\"announcement-block__content\">\n                <strong>&iexcl;Importante!<\/strong> Como parte de las mejores pr&aacute;cticas de seguridad para PostgreSQL, evita conceder al nuevo rol privilegios de superusuario a menos que sea necesario.\n            <\/p><\/div><\/p><p>Como se muestra en la salida, la base de datos crea con &eacute;xito <strong>TheNewUser<\/strong>.<\/p><figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/base-de-datos-crea-con-%C3%A9xito-TheNewUser.png\/public\" alt=\"Creaci&oacute;n exitosa de usuario en una base de datos PostgreSQL\" class=\"wp-image-41291\"><\/figure><h3 class=\"wp-block-heading\">6. Crea una base de datos en PostgreSQL<\/h3><p>PostgreSQL asume que el <a href=\"https:\/\/www.postgresql.org\/docs\/current\/user-manag.html\" target=\"_blank\" rel=\"noreferrer noopener\">rol<\/a> y la base de datos tendr&aacute;n el mismo nombre. Por tanto, si creas un rol <strong>TheNewUser<\/strong>, PostgreSQL acceder&aacute; a una base de datos con el mismo <strong>nombre<\/strong>.<\/p><p><div class=\"announcement-block announcement-block--important\">\n            <span class=\"announcement-block__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                          d=\"M12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5C6.20101 1.5 1.5 6.20101 1.5 12C1.5 17.799 6.20101 22.5 12 22.5ZM13.637 7.65198C13.637 6.74791 12.9041 6.01501 12 6.01501C11.0959 6.01501 10.363 6.74791 10.363 7.65198C10.5335 9.53749 10.875 13.383 10.875 13.383C10.875 14.0043 11.3787 14.508 12 14.508C12.6213 14.508 13.125 14.0043 13.125 13.383V13.38L13.637 7.65198ZM11.9927 15.714C11.3714 15.714 10.8677 16.2177 10.8677 16.839C10.8677 17.4603 11.3714 17.964 11.9927 17.964H12.0073C12.6286 17.964 13.1323 17.4603 13.1323 16.839C13.1323 16.2177 12.6286 15.714 12.0073 15.714H11.9927Z\"\n                          fill=\"#FEA419\"\/>\n                <\/svg>\n                Important\n            <\/span>\n            <p class=\"announcement-block__content\">\n                <strong>&iexcl;Importante!<\/strong> PostgreSQL utiliza informaci&oacute;n de Linux para la autenticaci&oacute;n. En el ejemplo anterior, necesitas un usuario llamado <strong>TheNewUser<\/strong>.\n            <\/p><\/div><\/p><p>Estos son los pasos de configuraci&oacute;n de la base de datos PostgreSQL:<\/p><ol class=\"wp-block-list\">\n<li>Ejecuta lo siguiente para cambiar al usuario <strong>postgres <\/strong>y crear una nueva base de datos:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo -u postgres createdb TheNewUser<\/pre><ol start=\"2\" class=\"wp-block-list\">\n<li>Para acceder a la nueva base de datos, crea una cuenta de usuario Linux con el mismo nombre. Como el nombre de usuario contiene may&uacute;sculas, a&ntilde;ade la opci&oacute;n <strong>&ndash;force-badname<\/strong>.<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo adduser TheNewUser --force-badname<\/pre><ol start=\"3\" class=\"wp-block-list\">\n<li>Entra en el prompt interactivo de PostgreSQL utilizando la nueva cuenta de usuario:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo -u TheNewUser psql<\/pre><ol start=\"4\" class=\"wp-block-list\">\n<li>Confirma la conexi&oacute;n mediante este comando:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">conninfo<\/pre><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"102\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/conninfo-1.png\/public\" alt=\"Configuraci&oacute;n de la base de datos PostgreSQL\" class=\"wp-image-41292\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/conninfo-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/conninfo-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/conninfo-1.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/conninfo-1.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><p>Ahora el usuario deber&iacute;a conectarse a la nueva base de datos y poder crear una nueva tabla. Por ejemplo, introduce lo siguiente para crear una tabla de datos de comprador:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">CREATE TABLE buyers(usr_id INT PRIMARY KEY, usr_name VARCHAR(240) NOT NULL, usr_location VARCHAR(240) NOT NULL);<\/pre><p>Al crear una tabla de base de datos, ten en cuenta las seis restricciones de PostgreSQL:<\/p><ul class=\"wp-block-list\">\n<li><strong>PRIMARY KEY:<\/strong> indica que una columna puede ser el identificador &uacute;nico de una fila.<\/li>\n\n\n\n<li><strong>FOREIGN KEY:<\/strong> especifica que los valores de una columna deben ser iguales a los de las filas de otra tabla.<\/li>\n\n\n\n<li><strong>NOT NULL:<\/strong> garantiza que el valor de una columna no est&aacute; vac&iacute;o.<\/li>\n\n\n\n<li><strong>CHECK: <\/strong>establece el valor de una columna para que deba satisfacer una expresi&oacute;n booleana, que puede ser &ldquo;verdadero&rdquo; o &ldquo;falso&rdquo;.<\/li>\n\n\n\n<li><strong>UNIQUE:<\/strong> garantiza que los valores de una columna son &uacute;nicos entre todas las filas.<\/li>\n\n\n\n<li><strong>EXCLUSION:<\/strong> impide que los valores de dos filas se superpongan al compararlos.<\/li>\n<\/ul><p>Para a&ntilde;adir valores a tu tabla, utiliza la siguiente sentencia. No olvides sustituir los marcadores de posici&oacute;n por el valor apropiado y ajustar el n&uacute;mero de filas en consecuencia:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">INSERT INTO tablename (columna1, columna2, columna3) VALUES (fila1, fila2, fila3);<\/pre><p>Para mostrar la tabla, introduce la siguiente sentencia:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">SELECT * FROM tablename<\/pre><h3 class=\"wp-block-heading\">7. Configura el servidor PostgreSQL<\/h3><p>Configura tu servidor PostgreSQL para permitir que otros sistemas accedan a la base de datos de forma remota. Para ello, deja que el servidor liste todas las direcciones IP editando el archivo de configuraci&oacute;n.<\/p><p>Antes de continuar, utiliza el comando <strong>exit <\/strong>para salir del int&eacute;rprete de comandos PostgreSQL y volver como usuario normal del sistema. A continuaci&oacute;n, sigue estos pasos:<\/p><ol class=\"wp-block-list\">\n<li>Abre el archivo de configuraci&oacute;n con un editor de texto. Sustituye <strong>vim <\/strong>si utilizas otro editor y cambia el directorio en consecuencia:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">vim \/etc\/postgresql\/14\/main\/postgresql.conf<\/pre><ol start=\"2\" class=\"wp-block-list\">\n<li>Busca la l&iacute;nea <strong>listen_addresses<\/strong>.<\/li>\n\n\n\n<li>Elimina el s&iacute;mbolo<strong> # <\/strong>y cambia el valor por un asterisco. As&iacute; es como deber&iacute;a quedar:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">listen_addresses = '*'<\/pre><ol start=\"4\" class=\"wp-block-list\">\n<li>Utiliza el comando <strong>:wq <\/strong>para guardar los cambios y salir de <strong>vim<\/strong>.<\/li>\n<\/ol><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"56\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/comando-wq.png\/public\" alt=\"Ejemplo uso del comando listen\" class=\"wp-image-41293\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/comando-wq.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/comando-wq.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/comando-wq.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/comando-wq.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><ol start=\"5\" class=\"wp-block-list\">\n<li>Establece la pol&iacute;tica de acceso para autenticar la conexi&oacute;n del cliente a tu servidor PostgreSQL. Para ello, abre el archivo <strong>pg_hba.conf <\/strong>en el mismo directorio utilizando <strong>vim<\/strong>. El comando deber&iacute;a tener este aspecto<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">vim \/etc\/postgresql\/14\/main\/pg_hba.conf<\/pre><ol start=\"6\" class=\"wp-block-list\">\n<li>A&ntilde;ade una nueva pol&iacute;tica al final del archivo utilizando esta sintaxis:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">connection database user ip_address encryption<\/pre><ol start=\"7\" class=\"wp-block-list\">\n<li>Por ejemplo, habilitaremos todas las conexiones TCP\/IP de todos los usuarios a todas las bases de datos PostgreSQL. Estos usuarios pueden utilizar cualquier direcci&oacute;n IP con una contrase&ntilde;a cifrada con MD5. La regla tiene el siguiente aspecto:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">host all all 0.0.0.0\/0 md5<\/pre><ol start=\"8\" class=\"wp-block-list\">\n<li>Reinicia el servicio PostgreSQL para aplicar los cambios.<\/li>\n<\/ol><h3 class=\"wp-block-heading\">8. Establece una conexi&oacute;n remota a la base de datos<\/h3><p>Tras configurar la base de datos, configura el acceso remoto a PostgreSQL mediante el comando <strong>psql<\/strong>. Para ello, utiliza esta sintaxis de comando en la m&aacute;quina cliente:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">psql -h ip_address -p port -d database -U username<\/pre><p>Por ejemplo, ejecuta este comando para conectarte a la base de datos <strong>TheNewUser<\/strong> alojada en un VPS con la direcci&oacute;n IP <strong>185.185.185.185 <\/strong>utilizando la cuenta <strong>TheNewUser<\/strong>:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">psql -h 185.185.185.185 -p 5432 -d TheNewUser -U TheNewUser<\/pre><p>Recuerda que el puerto PostgreSQL por defecto es <strong>5423<\/strong>. Para comprobar si la conexi&oacute;n se ha realizado correctamente, ejecuta este comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">conninfo<\/pre><p>Una vez conectado, puedes enviar consultas a la base de datos para recuperar datos. Para habilitar el acceso remoto PostgreSQL en tu aplicaci&oacute;n, instala un controlador de base de datos e importa el m&oacute;dulo en tu c&oacute;digo.<\/p><p>En este tutorial, te mostraremos c&oacute;mo hacerlo en una aplicaci&oacute;n Python alojada en un VPS <strong>Ubuntu 22.04<\/strong>. Tras conectarte via SSH, sigue estos pasos:<\/p><ol class=\"wp-block-list\">\n<li>Instala el <strong>gestor de paquetes pip <\/strong>utilizando este comando. Si ya lo tienes, salta este paso:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt-get install python-pip<\/pre><ol start=\"2\" class=\"wp-block-list\">\n<li>Descarga e instala el controlador de base de datos <strong>psycopg2 <\/strong>utilizando pip:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">pip install psycopg2-binario<\/pre><ol start=\"3\" class=\"wp-block-list\">\n<li>A&ntilde;ade la siguiente l&iacute;nea al c&oacute;digo de tu aplicaci&oacute;n para importar el m&oacute;dulo y establecer una conexi&oacute;n con la base de datos PostgreSQL. Recuerda cambiar el valor respectivamente:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">import psycopg2\n# Connect your app to the remote database.\nconn = psycopg2.connect(host=\"182.182.182.182\", port=\"5432\", dbname=\"TestNewUser\", user=\"TestNewUser\", password=\"UserPassword\")\n# Open a cursor for database operations\ncur = conn.cursor()\n# Execute a query. Replace table with your own. \ncur.execute(\"SELECT * FROM table\")\n# Retrieve data\nrecords = cur.fetchall()<\/pre><h3 class=\"wp-block-heading\">9. Instala pgAdmin<\/h3><p>Instala la interfaz gr&aacute;fica de usuario basada en web <strong>pgAdmin <\/strong>para simplificar tus tareas de gesti&oacute;n de bases de datos PostgreSQL. En este caso, utilizaremos el gestor de paquetes APT para instalarlo:<\/p><ol class=\"wp-block-list\">\n<li>Ejecuta estos comandos individualmente para a&ntilde;adir el repositorio oficial de pgAdmin:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">curl -fsSL https:\/\/www.pgadmin.org\/static\/packages_pgadmin_org.pub | sudo gpg --dearmor -o \/etc\/apt\/trusted.gpg.d\/pgadmin.gpg\n\nsudo sh -c 'echo \"deb https:\/\/ftp.postgresql.org\/pub\/pgadmin\/pgadmin4\/apt\/$(lsb_release -cs) pgadmin4 main\" &gt; \/etc\/apt\/sources.list.d\/pgadmin4.list'<\/pre><ol start=\"2\" class=\"wp-block-list\">\n<li>Actualiza las listas de paquetes para sincronizar el repositorio.<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt update<\/pre><ol start=\"3\" class=\"wp-block-list\">\n<li>Ejecuta el siguiente comando para instalar pgAdmin:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt install pgadmin4<\/pre><ol start=\"4\" class=\"wp-block-list\">\n<li>Una vez finalizada la configuraci&oacute;n de la GUI, inicia la configuraci&oacute;n primaria de pgAdmin con este comando:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo \/usr\/pgadmin4\/bin\/setup-web.sh<\/pre><ol start=\"5\" class=\"wp-block-list\">\n<li>Introduce tu direcci&oacute;n de correo electr&oacute;nico y tu contrase&ntilde;a. Debe tener el siguiente aspecto:<\/li>\n<\/ol><figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/configuraci%C3%B3n-primaria-de-pgAdmin.png\/public\" alt=\"Instalar pgAdmin\" class=\"wp-image-41294\"><\/figure><p>Para acceder a la interfaz basada en web de pgAdmin, introduce lo siguiente en la barra de direcciones de tu navegador web:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">185.185.185.185\/pgadmin4<\/pre><figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/Inicio-de-sesi%C3%B3n-en-pgAdmin-.png\/public\" alt=\"Inicio de sesi&oacute;n en pgAdmin \" class=\"wp-image-41295\"><\/figure><p>Sustituye la direcci&oacute;n IP por la de tu VPS. A continuaci&oacute;n, introduce tu direcci&oacute;n de correo electr&oacute;nico y tu contrase&ntilde;a. Haz clic en <strong>Iniciar sesi&oacute;n <\/strong>para acceder al panel principal de pgAdmin.<\/p><p>Para conectar PostgreSQL, selecciona <strong>A&ntilde;adir nuevo servidor <\/strong>y contin&uacute;a con el proceso de configuraci&oacute;n.<\/p><figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2024\/08\/A%C3%B1adir-nuevo-servidor.png\/public\" alt=\"A&ntilde;adir nuevo servidor en pgAdmin\" class=\"wp-image-41296\"><\/figure><h2 class=\"wp-block-heading\" id=\"h-solucion-de-problemas-de-instalacion-de-postgresql\">Soluci&oacute;n de problemas de instalaci&oacute;n de PostgreSQL<\/h2><p>En esta secci&oacute;n, exploraremos los problemas m&aacute;s comunes relacionados con la instalaci&oacute;n de PostgreSQL y sus soluciones.<\/p><h3 class=\"wp-block-heading\">1. No se puede conectar al servidor PostgreSQL<\/h3><p>En primer lugar, debes comprobar si el sistema cliente est&aacute; correctamente conectado a Internet. Si la conexi&oacute;n a Internet no es el problema, otras causas habituales de este error son una base de datos inactiva o un permiso de archivo mal configurado.<\/p><p>Comprueba el estado de PostgreSQL y aseg&uacute;rate de que est&aacute; <strong>cargado <\/strong>y <strong>activo<\/strong>. Si no es as&iacute;, rein&iacute;cialo utilizando el siguiente comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo systemctl restart postgresql<\/pre><p>Si eso no funciona, comprueba si los permisos de directorio y archivos de PostgreSQL est&aacute;n configurados a <strong>0700 <\/strong>y <strong>0600<\/strong>. Para ello, utiliza el siguiente comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">ls \/var\/lib\/postgresql\/main<\/pre><p>Despu&eacute;s, utiliza el <a href=\"\/co\/tutoriales\/cambiar-permisos-y-propietarios-linux-linea-de-comandos\/\">comando chmod<\/a> para cambiar sus permisos.<\/p><h3 class=\"wp-block-heading\">2. Problemas de conexi&oacute;n PostgreSQL desde el host remoto<\/h3><p>Una pol&iacute;tica de conexi&oacute;n mal configurada puede causar problemas de host remoto que te impidan acceder al servidor PostgreSQL. Para solucionarlo, abre tu archivo <strong>pg_hba.conf <\/strong>y a&ntilde;ade la pol&iacute;tica de acceso de la direcci&oacute;n IP de cada cliente:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">host all all 0.0.0.0\/0 md5<\/pre><p>A continuaci&oacute;n, comprueba el valor <strong>listen_address <\/strong>de tu archivo de configuraci&oacute;n <strong>postgres.conf<\/strong>. Aseg&uacute;rate de que tiene un <strong>asterisco <\/strong>para garantizar que PostgreSQL puede escuchar todas las direcciones IP.<\/p><p>Si eso no funciona, comprueba si tu cortafuegos cierra el puerto de escucha PostgreSQL. Para el servidor Ubuntu, ejecuta el comando <strong>ufw<\/strong>:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo ufw status verbose<\/pre><p>Si la conexi&oacute;n desde y hacia el puerto <strong>5432 <\/strong>est&aacute; desactivada, &aacute;brela utilizando el siguiente comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo ufw allow 5432\/tcp<\/pre><h3 class=\"wp-block-heading\">3. Problemas de inicio de sesi&oacute;n en pgAdmin<\/h3><p>Los problemas de inicio de sesi&oacute;n en pgAdmin pueden deberse a un error de conexi&oacute;n con la base de datos. Si est&aacute; relacionado con la red, prueba las soluciones anteriores y vuelve a instalar pgAdmin.<\/p><p>Si el problema est&aacute; relacionado con las credenciales de acceso a la cuenta de usuario, entra en la sesi&oacute;n <strong>psql <\/strong>y restablece la contrase&ntilde;a utilizando esta sentencia:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">ALTER USER username WITH PASSWORD 'new_password';<\/pre><p>Tambi&eacute;n puedes encontrarte con problemas de inicio de sesi&oacute;n si el usuario no tiene el privilegio <strong>LOGIN<\/strong>. Para concederlo, utiliza la siguiente sentencia:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">ALTER USER username WITH LOGIN;<\/pre><h3 class=\"wp-block-heading\">4. Conflicto de versiones de PostgreSQL<\/h3><p>Los conflictos de versi&oacute;n se producen cuando PostgreSQL es incompatible con la base de datos u otras aplicaciones. Su causa habitual es no actualizar PostgreSQL, lo que provoca un desajuste de versiones.<\/p><p>Para solucionarlo, reinstala o actualiza PostgreSQL desde el repositorio oficial de APT. Actualiza tambi&eacute;n todas las aplicaciones de terceros, ya que pueden estar obsoletas.<\/p><p>Recomendamos probar la versi&oacute;n m&aacute;s reciente en un entorno de desarrollo para evitar m&aacute;s problemas en el servidor activo.<\/p><h3 class=\"wp-block-heading\">5. No se puede crear un usuario o base de datos PostgreSQL<\/h3><p>Una sintaxis de comando incorrecta suele provocar errores en la creaci&oacute;n de usuarios y bases de datos PostgreSQL. Para solucionarlo, aseg&uacute;rate de que tu comando termina con punto y coma (<strong>;<\/strong>).<\/p><p>Adem&aacute;s, debes ejecutar el comando utilizando el usuario <strong>postgres <\/strong>y la l&iacute;nea de comandos <strong>psql<\/strong>. Para ello, ejecuta este comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo -u postgres psql<\/pre><p>Si tu Terminal muestra lo siguiente, deber&iacute;as poder crear un usuario y una base de datos.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">postgres=#<\/pre><p>        <div class=\"protip\">\n            <div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                    M&aacute;s informaci&oacute;n sobre PostgreSQL y VPS                <\/p>\n            <\/div>\n            <p class=\"protip__content\"><a href=\"\/co\/tutoriales\/que-es-un-vps\/\">Qu&eacute; es un VPS<\/a><\/p><p><a href=\"\/co\/tutoriales\/configurar-servidor-vps\/\">C&oacute;mo configurar un VPS<\/a><\/p><p><a href=\"\/co\/tutoriales\/como-configurar-firewall-ubuntu\/\">Configurar el cortafuegos de Ubuntu<\/a><\/p>\n                    <\/div>\n        <\/p><h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusi&oacute;n<\/h2><p>PostgreSQL es un sistema de gesti&oacute;n de bases de datos de c&oacute;digo abierto impulsado por la comunidad. Utiliza una estructura l&oacute;gica para almacenar eficazmente grandes cantidades de datos y simplificar el acceso.<\/p><p>En este tutorial sobre el sistema de gesti&oacute;n de bases de datos relacionales, hemos explicado los pasos para instalar PostgreSQL en Ubuntu 22.04 mediante el s&iacute;mbolo del sistema de Linux. Aqu&iacute; el resumen:<\/p><ol class=\"wp-block-list\">\n<li>Instala PostgreSQL desde el repositorio oficial utilizando <strong>APT<\/strong>.<\/li>\n\n\n\n<li>Ejecuta <strong>systemctl status <\/strong>para comprobar si Postgresql est&aacute; activo.<\/li>\n\n\n\n<li>Con&eacute;ctate a la cuenta PostgreSQL utilizando <strong>sudo su &ndash; postgres<\/strong>.<\/li>\n\n\n\n<li>Cambia la contrase&ntilde;a de la cuenta de administrador por defecto para mejorar la seguridad.<\/li>\n\n\n\n<li>Crea un nuevo usuario PostgreSQL para gestionar tus bases de datos.<\/li>\n\n\n\n<li>Haz una nueva base de datos utilizando el comando <strong>createdb<\/strong>.<\/li>\n\n\n\n<li>Configura el servidor PostgreSQL configurando su pol&iacute;tica de conexi&oacute;n.<\/li>\n\n\n\n<li>Ajusta una conexi&oacute;n a tu base de datos PostgreSQL remota.<\/li>\n\n\n\n<li>Instala pgAdmin para disponer de una interfaz gr&aacute;fica de usuario.<\/li>\n<\/ol><p>Para evitar problemas, aseg&uacute;rate de que las pol&iacute;ticas de conexi&oacute;n y las credenciales de acceso a pgAdmin est&aacute;n configuradas correctamente. <\/p><p>Adem&aacute;s, instala la &uacute;ltima versi&oacute;n del RDBMS mediante APT para evitar problemas de incompatibilidad.<\/p><figure class=\"wp-block-image size-large\"><a href=\"\/co\/servidor-vps\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=1024,h=1024,fit=scale-down\" alt=\"\" class=\"wp-image-29287\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=768,fit=scale-down 768w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/40\/2023\/02\/ES-VPS-hosting_in-text-banner.png\/w=1536,fit=scale-down 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><h2 class=\"wp-block-heading\" id=\"h-como-instalar-postgresql-en-ubuntu-preguntas-frecuentes\">C&oacute;mo instalar PostgreSQL en Ubuntu &ndash; Preguntas frecuentes<\/h2><p>En esta secci&oacute;n, responderemos a varias preguntas frecuentes sobre la instalaci&oacute;n de PostgreSQL en Ubuntu.<\/p><div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-6944739c1aa46\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">&iquest;D&oacute;nde est&aacute; instalado Postgres en Ubuntu?&nbsp;<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>En Ubuntu, los archivos principales del servidor PostgreSQL est&aacute;n en el directorio u003cstrongu003e\/usr\/lib\/postgresql\/u0026lt;version\/bin\/postgresu003c\/strongu003e. Todos los clusters de bases de datos se almacenan en el directorio u003cstrongu003e\/var\/lib\/postgresql\/mainu003c\/strongu003e.&nbsp;u003cbr \/u003eu003cbr \/u003eMientras tanto, la configuraci&oacute;n de PostgreSQL est&aacute; en el archivo u003cstrongu003e\/etc\/postgresql\/main\/postgresql.confu003c\/strongu003e.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-6944739c1aa48\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">&iquest;C&oacute;mo s&eacute; si PostgreSQL est&aacute; instalado en Ubuntu?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>La forma m&aacute;s sencilla de comprobar si PostgreSQL est&aacute; instalado en un servidor Ubuntu es ejecutar u003cstrongu003esudo -u postgres psql u003c\/strongu003eo u003cstrongu003ewhich psqlu003c\/strongu003e. El terminal deber&iacute;a mostrar la ruta de instalaci&oacute;n si est&aacute; instalado.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-6944739c1aa49\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">&iquest;Debo utilizar PostgreSQL 13 o 14?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>PostgreSQL 14 tiene un escalado de conexiones mejorado. Esto hace que PostgreSQL 14 sea m&aacute;s adecuado para grandes empresas con muchas conexiones a bases de datos. Recomendamos utilizar la versi&oacute;n m&aacute;s reciente para obtener las &uacute;ltimas funciones, mejoras y parches.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>PostgreSQL es un sistema de gesti&oacute;n popular de bases de datos relacionales (RDBMS) de c&oacute;digo abierto, conocido por su escalabilidad y eficacia en el manejo de grandes cantidades de datos. Debido a su alto rendimiento, PostgreSQL es ideal para sitios web o aplicaciones de grandes empresas. Tambi&eacute;n admite varios tipos de datos y lenguajes de [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/co\/tutoriales\/instalar-postgresql-ubuntu\/\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":138,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"rank_math_title":"Gu\u00eda: c\u00f3mo Instalar PostgreSQL En Ubuntu y uso de databases","rank_math_description":"Existen m\u00faltiples bases de datos relacionales que sirven como una alternativa a MySQL. Aprende c\u00f3mo instalar PostgreSQL en Ubuntu ac\u00e1.","rank_math_focus_keyword":"instalar postgresql","footnotes":""},"categories":[5700],"tags":[11293],"class_list":["post-9254","post","type-post","status-publish","format-standard","hentry","category-vps","tag-postgresql"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/tutorials\/how-to-install-postgresql-on-ubuntu\/","default":1},{"locale":"pt-BR","link":"https:\/\/www.hostinger.com\/br\/tutoriais\/instalar-postgresql-ubuntu\/","default":0},{"locale":"fr-FR","link":"https:\/\/www.hostinger.com\/fr\/tutoriels\/installer-postgresql-ubuntu\/","default":0},{"locale":"es-ES","link":"https:\/\/www.hostinger.com\/es\/tutoriales\/instalar-postgresql-ubuntu\/","default":0},{"locale":"id-ID","link":"https:\/\/www.hostinger.com\/id\/tutorial\/install-postgresql-ubuntu\/","default":0},{"locale":"en-PH","link":"https:\/\/www.hostinger.com\/ph\/tutorials\/how-to-install-postgresql-on-ubuntu\/","default":0},{"locale":"en-MY","link":"https:\/\/www.hostinger.com\/my\/tutorials\/how-to-install-postgresql-on-ubuntu\/","default":0},{"locale":"en-GB","link":"https:\/\/www.hostinger.com\/uk\/tutorials\/how-to-install-postgresql-on-ubuntu\/","default":0},{"locale":"en-IN","link":"https:\/\/www.hostinger.com\/in\/tutorials\/how-to-install-postgresql-on-ubuntu\/","default":0},{"locale":"en-CA","link":"https:\/\/www.hostinger.com\/ca\/tutorials\/how-to-install-postgresql-on-ubuntu\/","default":0},{"locale":"en-AU","link":"https:\/\/www.hostinger.com\/au\/tutorials\/how-to-install-postgresql-on-ubuntu\/","default":0},{"locale":"en-NG","link":"https:\/\/www.hostinger.com\/ng\/tutorials\/how-to-install-postgresql-on-ubuntu\/","default":0},{"locale":"es-AR","link":"https:\/\/www.hostinger.com\/ar\/tutoriales\/instalar-postgresql-ubuntu\/","default":0},{"locale":"es-MX","link":"https:\/\/www.hostinger.com\/mx\/tutoriales\/instalar-postgresql-ubuntu\/","default":0},{"locale":"es-CO","link":"https:\/\/www.hostinger.com\/co\/tutoriales\/instalar-postgresql-ubuntu\/","default":0},{"locale":"pt-PT","link":"https:\/\/www.hostinger.com\/pt\/tutoriais\/instalar-postgresql-ubuntu\/","default":0}],"acf":[],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/posts\/9254","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/users\/138"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/comments?post=9254"}],"version-history":[{"count":14,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/posts\/9254\/revisions"}],"predecessor-version":[{"id":46786,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/posts\/9254\/revisions\/46786"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/media?parent=9254"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/categories?post=9254"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/co\/tutoriales\/wp-json\/wp\/v2\/tags?post=9254"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}