Creando una base de datos postgresql. Instalación y configuración inicial de PostgreSQL. Conexión a la base de datos

1. Instalación

1.1. Instalación desde el repositorio oficial.

Si el último disponible es importante para ti Versión PostgreSQL(si no, le aconsejo que lo piense detenidamente), entonces debe instalarlo desde repositorio oficial PostgreSQL. Esto se puede hacer siguiendo las instrucciones oficiales. Luego, deberías actualizar los paquetes:

$ sudo apt-obtener actualización

E instale PostgreSQL con el comando:

$ sudo apt-get install postgresql-x.x

  • x.x- versión requerida

Lista de todos versiones disponibles se puede ver con el comando:

$ sudo apt-cache buscar postgresql

1.2. Instalación desde el repositorio del sistema operativo

La instalación de PostgreSQL desde el repositorio del sistema operativo se realiza agregando dos paquetes principales:

$ sudo apt-get install postgresql postgresql-contrib

2. Consola PostgreSQL

Todo operaciones disponibles El control de bases de datos y usuarios se realiza desde la consola. psql.

2.1. Inicie sesión en la consola

Primero debes iniciar sesión como usuario. postgres, esto solo es posible con derechos raíz:

#su-postgres

Usuario postgres- este es un tipo de superusuario para la base de datos datos PostgreSQL. Luego, desde debajo del usuario postgres puedes iniciar sesión en la consola:

O más fácil, simplemente inicia sesión en la consola. psql bajo usuario postgres:

$ sudo -u postgrespsql

2.2. Salir de la consola

Cuando se hayan completado todas las operaciones en los usuarios y bases de datos de PostgreSQL en la consola psql, no es posible descubrir inmediatamente cómo salir de ella. Aquí todo es muy sencillo:

Postgres=#\q

Y, si es necesario, dejamos al usuario postgres:

3. Usuarios de PostgreSQL

3.1. Creando un usuario

Aquí todo es bastante sencillo:

# CREAR USUARIO nombre de usuario CON CONTRASEÑA "12345";

  • nombre de usuario- inicio de sesión de nuevo usuario
  • ‘12345’ - Contraseña de usuario. Introducido entre comillas

3.2. Eliminar un usuario

Es aún más sencillo aquí:

# DROP USER nombre de usuario;

  • nombre de usuario- inicio de sesión del usuario que debe ser eliminado.

4. Bases de datos

Todas las manipulaciones con la base de datos también se realizan en la consola. psql.

4.1. Creando una base de datos

Aquí todo es igual que al crear un usuario:

# CREAR BASE DE DATOS nombrebd;

4.2. Eliminar una base de datos

# BOTAR BASE DE DATOS dbname;
  • nombrebd- nombre de la base de datos que se eliminará

Tenga en cuenta que la base de datos se negará a ser eliminada en ciertos casos:

  • Si hay usuarios con derechos sobre esta base de datos. Antes de eliminar la base de datos, se deben revocar sus derechos. Más sobre esto más adelante.
  • Si hay al menos una sesión de conexión abierta con la base de datos. En este caso, será necesario cerrar las sesiones. Como último recurso, puede simplemente detener la interacción de los servidores con esta base de datos en el momento de su eliminación (aunque no tiene mucho sentido iniciarlos después de eliminar la base de datos).

4.3. Asignar derechos a los usuarios

Tener una base de datos y usuarios en un sistema PostgreSQL por sí solo no produce resultados. Para funcionamiento correcto un usuario específico con una base de datos específica, se le deben asignar derechos para trabajar con ella. Para hacer esto, ejecute el comando:

# OTORGAR TODOS LOS PRIVILEGIOS EN LA BASE DE DATOS dbname AL nombre de usuario;

  • nombrebd- nombre de la base de datos a la que se deben conceder derechos de acceso
  • nombre de usuario- el nombre del usuario al que se le concederán derechos sobre la base de datos especificada

4.4. Eliminar derechos de usuario

En ocasiones, se hace necesario cambiar el usuario que gestiona la base de datos, o simplemente revocar los derechos para su posterior eliminación. Recomiendo no descuidar este comando y actuar según el principio "Un usuario gestiona una base de datos".

Después de haber descargado Base de datos de palabras clave en inglés, necesita instalar un servidor de base de datos localmente y aprender a realizar selecciones. Para ello, ofrecemos instrucciones paso a paso.

IMPORTANTE: Si no tienes experiencia trabajando con bases de datos o esta experiencia es mínima, te recomendamos encarecidamente comenzar con una base mínima para resolver el proceso.

Las capturas de pantalla de las instrucciones muestran cómo trabajar con una base mínima y, en consecuencia, se indica el tiempo para una base mínima, pero trabajar con una base extendida y máxima llevará más tiempo.

Descarga e instalación del servidor de base de datos PostgreSQL

http://www.postgresql.org/download/windows/

1. Descargar programa gratuito para la base de datos PostgreSQL desde el sitio web oficial http://www.postgresql.org/
descargar/ventanas/

http://www.enterprisedb.com/products-services-training/pgdownload#windows:

Luego siga el enlace a página detallada Versiones de bases de datos para diferentes sistemas operativos: http://www.enterprisedb.com/
productos-servicios-formacion/
pgdescargar#windows:


IMPORTANTE: Recomendamos instalar el servidor de base de datos y realizar selecciones en Sistema de 64 bits con al menos 6 GB RAM cuando se trabaja con bases de datos mínimas y extendidas. En el caso de una base máxima, la cantidad de RAM recomendada es a partir de 32 GB, también deseable disco rápido. En una computadora con un sistema de 32 bits, el proceso de importar datos, indexarlos y recuperarlos llevará mucho, mucho tiempo, por lo que es mejor abandonar esta idea.

Si no conoce la profundidad de bits de su sistema operativo, puede buscarla en las propiedades de la computadora ( botón derecho Coloque el mouse sobre el elemento "Computadora", seleccione "Propiedades" en el menú):


2. Instale la base de datos PostgreSQL descargada. Durante la instalación, casi todo está por defecto...


...excepto por algunas cosas.

3. Iniciamos la operación de optimización de la tabla de forma similar:

vacío "eng_data_table";


La optimización tarda una media de 15 a 30 minutos.

Nota: Realizamos solicitudes una a la vez, borrando primero las solicitudes anteriores que ya se han completado. Puede averiguar si la solicitud se completó o no en el mensaje en el Panel de salida en la parte inferior (aparece cuando se completa la solicitud) y puede averiguar el tiempo de ejecución en la barra de estado en la parte inferior de la ventana.

Administración del sistema

Esta publicación es breves instrucciones para principiantes, para quienes instalaron PostgreSQL por primera vez. todo esta aqui información necesaria para comenzar con PostgreSQL.

Conexión al DBMS

Lo primero que debemos hacer es acceder a PostgreSQL, acceder como superusuario.
La configuración de autenticación se encuentra en el archivo pg_hba.conf.
  1. local todos los pares de postgres
Esta línea dice que el usuario de Postgres puede conectarse a cualquier base de datos local. SGBD PostgreSQL mediante enchufe. No es necesario ingresar una contraseña; el sistema operativo transmitirá el nombre de usuario y se utilizará para la autenticación.
Conectemos:
  1. $ sudo -u postgres psql postgres postgres
Para poder conectarse a través de la red, debe agregar la línea a pg_hdba.conf:
  1. # TIPO BASE DE DATOS USUARIO DIRECCIÓN MÉTODO
  2. hostssl todos todos 0.0.0.0/0 md5
Método de autenticación md5 significa que tendrás que ingresar una contraseña para conectarte. Esto no es muy conveniente si usa frecuentemente la consola psql. Si desea automatizar algunas acciones, entonces malas noticias El problema es que psql no acepta una contraseña como argumento. Hay dos formas de resolver estos problemas: configurar la variable de entorno adecuada y almacenar la contraseña en un archivo especial .pgpass.

Configuración de la variable de entorno PGPASSWORD

Diré de inmediato que es mejor no utilizar este método, porque algunos sistemas operativos te permiten ver usuarios comunes variables de entorno usando ps. Pero si quieres, debes escribir en la terminal:
  1. exportar PGPASSWORD=micontraseña
La variable estará disponible en la sesión actual. Si necesita configurar una variable para todas las sesiones, debe agregar la línea del ejemplo al archivo .bashrc o .bash_profile

Almacenamiento de la contraseña en el archivo .pgpass

Si estamos hablando de Linux, entonces el archivo debe estar ubicado en $HOME (/home/nombre de usuario). Sólo el propietario (0600) debe tener derechos de escritura y lectura. Necesita escribir líneas como esta en el archivo:
  1. nombre de host:puerto:base de datos:nombre de usuario:contraseña
Puede escribir “*” en los primeros cuatro campos, lo que significará que no habrá filtrado (selección completa).

Obtener información de ayuda

\? - lo regalará todo comandos disponibles junto con su breve descripción,
\h - mostrará una lista de todas las consultas disponibles,
\h CREATE: proporcionará ayuda para una solicitud específica.

Gestión de usuarios de DBMS

¿Cómo obtener una lista de usuarios de PostgreSQL?
  1. O puede consultar la tabla pg_user.

SELECCIONAR * DE pg_user;

Creando un nuevo usuario de PostgreSQL De caparazón
  1. psql esto se puede hacer usando el comando CREATE.
CREAR USUARIO nombre de usuario CON contraseña "contraseña";
  1. O puedes usar la terminal.
crear usuario -S -D -R -P nombre de usuario

Se le pedirá que ingrese una contraseña.

  1. Cambiar la contraseña del usuario

ALTERAR USUARIO nombre de usuario CON CONTRASEÑA "contraseña";

Cambiar roles de usuario
  1. Para otorgar permiso al usuario para crear bases de datos, ejecute la siguiente consulta:

ALTERAR ROL nombre de usuario CON CREADOB;

Gestión de bases de datos
  1. Mostrando una lista de bases de datos en la terminal psql: Lo mismo desde la terminal Linux:
psql-l
  1. Creando una base de datos desde psql (Terminal PostgreSQL)
CREAR BASE DE DATOS dbname PROPIETARIO dbadmin; Creación nueva base
  1. datos utilizando el terminal:

creadob -O nombre de usuario nombrebd;

Configurar derechos de acceso a la base de datos Si el usuario es el propietario de la base de datos, entonces tiene todos los derechos. Pero si desea dar acceso a otro usuario, puede hacerlo usando el comando GRANT. La siguiente consulta permitirá al usuario conectarse a la base de datos. Pero no te olvides de archivo de configuración
  1. pg_hba.conf, también debe tener los permisos de conexión adecuados.

CONCEDER CONEXIÓN EN LA BASE DE DATOS dbname A dbadmin; La primera prueba para demostrar que puede acceder al servidor de la base de datos es intentar crear una base de datos. Servidor en ejecución PostgreSQL puede gestionar múltiples bases de datos. Normalmente, se utiliza una base de datos separada para cada proyecto o cada usuario. Es posible que el administrador de su máquina ya haya creado una base de datos para usted. Debería haberte dicho el nombre de tu base de datos. En este caso, puedes saltarte esta sección y pasar a la siguiente.

Si el comando se completó sin ningún mensaje, entonces este paso se completó exitosamente y puede omitir lo que sigue hasta el final de esta sección.

Si obtiene algo similar a: creadob: comando extraviado

esto significa que el producto PostgreSQL no se instaló correctamente. O no se instaló todo o la ruta de búsqueda en su shell no se configuró correctamente. Intente llamar a este comando usando la ruta completa:

$ /usr/local/pgsql/bin/createdb mydb

La ruta completa en su máquina puede ser diferente. Póngase en contacto con su administrador o consulte las instrucciones de instalación para corregir la situación.

Otro mensaje que puede recibir: creadob: no pudo conectarse a la base de datos postgres: no se pudo conectar al servidor: No existe tal archivo o directorio No existe tal archivo o directorio ¿El servidor se ejecuta localmente y acepta conexiones en el socket de dominio Unix "/tmp/.s.PGSQL.5432"?

Esto significa que el servidor no se inició o que no se inició como esperaba el comando creadob. Nuevamente, consulte las instrucciones de instalación o consulte a su administrador.

Otro mensaje que puede recibir: creadob: no se pudo conectar a la base de datos postgres: FATAL: el usuario "joe" no existe

donde se menciona su nombre de usuario en lugar de joe. Este mensaje aparece si el administrador no ha creado un usuario para usted en PostgreSQL. (Un usuario de PostgreSQL no es un usuario del sistema operativo). Si es administrador, consulte el Capítulo 20 para obtener información sobre cómo crear un usuario. Necesitará registrarse con Sistema operativo bajo el nombre del usuario bajo el cual se ejecuta PostgreSQL (generalmente postgres) para crear el primer usuario en el DBMS.

Para el comando de creación de base de datos, también puede especificar un nombre de usuario en PostgreSQL que sea diferente del nombre de usuario de su sistema operativo actual; en este caso, debe configurar el nombre de usuario de PostgreSQL usando la opción -U o la configuración variable de entorno PGUSER.

No todos los usuarios tienen autorización para crear nuevas bases de datos.

Si PostgreSQL rechaza sus intentos de crear bases de datos, entonces el administrador de su máquina deberá otorgarle derechos para crear bases de datos. Consúltalo en este caso.

Si instaló PostgreSQL usted mismo, para los fines de este tutorial debe iniciar sesión como el usuario con el que está ejecutando el servidor de base de datos. También puede crear bases de datos con cualquier otro nombre. PostgreSQL le permite crear cualquier cantidad de bases de datos en un solo servidor. Los nombres de las bases de datos deben constar de letras y números (siempre debe haber una letra primero) y no tener más de 63 bytes de longitud. Es bastante conveniente crear una base de datos con el mismo nombre que el usuario. Muchas herramientas utilizarán este nombre de forma predeterminada como nombre de la base de datos, por lo que no es necesario hacer clic en demasiados botones. Para crear una base de datos con el mismo nombre que el usuario, simplemente escriba: $ creadob Si no desea utilizar su base de datos en el futuro, puede eliminarla. Por ejemplo, si es el propietario (creador) de la base de datos mydb, puede eliminarla usando el siguiente comando: $ dropdb mydb




Arriba