Administrando una Base de datos

Ahora que Postgres está ejecutándose podemos crear alguna base de datos para experimentar con ella. Aquí describimos las órdenes básicas para administrar una base de datos

La mayoría de las aplicaciones Postgres asumen que el nombre de la base de datos, si no se especifica, es el mismo que el de su cuenta en el sistema.

Si el administrador de bases de datos ha configurado su cuenta sin privilegios de creación de bases de datos, entonces deberán decirle el nombre de sus bases datos. Si este es el caso, entonces puede omitir la lectura de esta sección sobre creación y destrucción de bases de datos.

Creación de una base de datos

Digamos que quiere crear una base de datos llamada mydb. Puede hacerlo con la siguiente orden:

% createdb mydb

Si no cuenta con los privilegios requeridos para crear bases de datos, verá lo siguiente:

% createdb mydb
NOTICE:user "su nombre de usuario" is not allowed to create/destroy databases
createdb: database creation failed on mydb.

Postgres le permite crear cualquier número de bases de datos en un sistema dado y automáticamente será el administrador de la base de datos que creó. Los nombres de las bases de datos deben comenzar por un carácter alfabético y están limitados a una longitud de 32 caracteres. No todos los usuarios están autorizados para ser administrador de una base de datos. Si Postgres le niega la creación de bases de datos, seguramente es debido a que el administrador del sistema ha de otorgarle permisos para hacerlo. En ese caso, consulte al administrador del sistema.

Acceder a una base de datos

Una vez que ha construido una base de datos, puede acceder a ella:

Puede que desee ejecutar psql, para probar los ejemplos en este manual. Lo puede activar para la base de datos mydb escribiendo la orden:
% psql mydb
Se le dará la bienvenida con el siguiente mensaje:
Welcome to the POSTGRESQL interactive sql monitor:
  Please read the file COPYRIGHT for copyright terms of POSTGRESQL

   type \? for help on slash commands
   type \q to quit
   type \g or terminate with semicolon to execute query
 You are currently connected to the database: template1

mydb=>

Este prompt indica que el monitor está listo y puede escribir sus consultas SQL dentro de un espacio de trabajo mantenido por el monitor. El programa psql responde a los códigos de escape que empiezan por el carácter "\". Por ejemplo, puede obtener la ayuda acerca de la sintaxis de varias órdenes SQL Postgres escribiendo:

mydb=> \h
Una vez que haya terminado de introducir consultas, puede pasar el contenido del espacio de trabajo al servidor Postgres escribiendo:
mydb=> \g
Esto le dice al servidor que procese la consulta. Si termina su consulta con un punto y coma, la "\g" no es necesaria. psql procesará automáticamente las consultas terminadas con punto y coma. Para leer consultas desde un archivo, digamos myFile, en lugar de introducirlas interactivamente, escriba:
mydb=> \i nombreDelFichero
Para salir de psql y regresar a Unix escriba:
mydb=> \q
y psql terminará y volverá a la línea de órdenes. (Para conocer más códigos de escape, escriba \h en el prompt del monitor). Se pueden utilizar espacios en blanco (por ejemplo espacios, tabulador y el carácter de nueva línea) en las consultas SQL. Las líneas simples comentadas comienzan por "--". Lo que haya después de los guiones hasta el final de línea será ignorado. Los comentarios múltiples y los que ocupan más de una línea se señalan con "/* ... */"

Eliminando bases de datos

Si es el administrador de la base de datos mydb, puede eliminarla utilizando la siguiente orden Unix:

% dropdb mydb
Esta acción elimina físicamente todos los archivos Unix asociados a la base de datos y no pueden recuperarse, así que deberá hacerse con precaución.