User Tools

Site Tools


proyecto:instalar_postgres

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
proyecto:instalar_postgres [2017/04/11 17:11] ahoganproyecto:instalar_postgres [2018/04/20 19:49] (current) ahogan
Line 6: Line 6:
  
 <code> <code>
-sudo nano /etc/apt/sources.list.d/pgdg.list+sudo vim /etc/apt/sources.list.d/pgdg.list
 </code> </code>
  
-(''sudo'' dice que va ejecutar el comando con privilegios administrativos (como "root"). La contraseña es la misma que su cuenta SSH. )+(''sudo'' dice que va ejecutar el comando con privilegios administrativos (como "root"). La contraseña es la misma que su cuenta SSH. En vim, hay que presionar ''i'' para empezar a editar el archivo; luego, para guardar y salir, hay que presionar ''Esc'', y después poner '':wq'' [enter].)
  
-En el archivo, hay que agregar la siguiente linea y guardar el archivo:+En el archivo, hay que agregar la siguiente linea y guardarlo:
  
 <code> <code>
Line 21: Line 21:
 <code> <code>
 cd /home/cc3201/ cd /home/cc3201/
 +
 +sudo apt-get install gnupg
  
 wget --no-check-certificate --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - wget --no-check-certificate --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
 </code> </code>
 +
 +Así hemos actualizado los //packages// de instalación de Debian.
 +
 +Ahora, podemos instalar la versión actual de Postgres (9.6):
 +
 +<code>
 +sudo apt-get update
 +sudo apt-get install postgresql-9.6
 +</code>
 +
 +Ahora sí, hay postgres.
 +
 +El próximo problema es que el usuario de Postgres, por defecto, se llama ''postgres'' y nuestro usuario es ''cc3201'', entonces si intentas con:
 +
 +<code>
 +psql
 +</code>
 +
 +dice
 +
 +<code>
 +psql: FATAL:  role "cc3201" does not exist
 +</code>
 +
 +Pero, dado que tenemos ''sudo'', podemos usar el siguiente comando (''su'': ''s''witch ''u''ser) para ingresar como el usuario ''postgres''.
 +
 +<code>
 +sudo su postgres
 +</code>
 +
 +Entonces podemos crear un usuario para ''cc3201'' en Postgres:
 +
 +<code>
 +createuser cc3201 -s
 +</code>
 +
 +La opción ''-s'' significa que ''cc3201'' será un //superuser// (como ''postgres'') que tiene poder administrativo. Y tenemos que crear una base de datos para el usuario;
 +
 +<code>
 +createdb -O cc3201 cc3201
 +</code>
 +
 +Después, podemos salir de la cuenta de ''postgres'' y regresar al usuario ''cc3201'':
 +
 +<code>
 +exit
 +</code>
 +
 +Ahora, podemos probar Postgres:
 +
 +<code>
 +psql
 +</code>
 +
 +<code>
 +cc3201=# SELECT version();
 +</code>
 +
 +Finalmente, podemos crear un esquema (//schema//), que es como un grupo de tablas (aquí hay que reemplazar ''<nombre>'' con el nombre del esquema que quieren tener):
 +
 +<code>
 +cc3201=# CREATE SCHEMA <nombre>;
 +</code>
 +
 +Para evitar tener que poner el esquema cada vez, se puede agregarlo al //path// del usuario:
 +
 +<code>
 +cc3201=# ALTER USER cc3201 SET search_path TO <nombre>, public;
 +</code>
 +
 +Ahora, se puede dar solo el nombre de una tabla en el esquema y no el nombre del esquema (p.ej. no hay que poner cc3201=# ''SELECT * FROM <nombre>.tabla''; funciona con ''SELECT * FROM tabla'').
  
  
  
-Así hemos actualizado los packages de instalación y hemos instalado una versión de Postgres.+Ahora están listos para crear tablas, cargar datos, armar indices, hacer consultas ... desde aquí, hay que consultar las diapositivas de las clases.
proyecto/instalar_postgres.1491930663.txt.gz · Last modified: 2017/04/11 17:11 by ahogan