Hola a todos.
Cuando instalamos PostgreSQL, nos crea automáticamente la base de tados con el nombre de postgres. Me gustaría saber para que sirve exactamente esta base de datos ya que aparentemente no tiene tablas.
Asimismo todas las bases de datos creadas en PostgreSQL vienen con 2 catálogos que son ANSI(Information_schema) y PostgreSQL(pg_catalog). Tengo entendido que los catálogos los utiliza PostgreSQL para guardar los meta-datos de nuestra base de datos y del sistema en general, también nos provee de funciones que podemos utilizar en nuestras consultas. ¿Que diferencia hay entre estos dos catálogos?
Gracias.
Re: Catálogos PostgreSQL
Dom, 05/02/2012 - 11:06 — rafaelmaHola
Por defecto un cliente que se conecte con un servidor postgres, sin especificar la bases de datos y el usuario a utilizar, se intentara conectar a la base de datos 'postgres' como usuario administrador 'postgres'.
Si especificas solamente el nombre de usuario, el cliente intentara conectarse por defecto a la base de datos que se llame igual que el usuario.
e.g.
Se intentara conectar como usuario postgres a la base de datos postgres.
Se intentara conectar como usuario rafael a la base de datos rafael.
Se intentara conectar como usuario rafael a la base de datos test.
No borres la base de datos (HOME) del superusuario postgres. Algunos lo hacen, pero esto te puede dar problemas en un futuro.
Information_schema es un conjunto estandar de vistas con informacion sobre el DDL de la base de datos en la que estes. Muchas otras bases de datos tienen tienen la misma Information_schema que postgres.
pg_catalog es un conjunto de vistas con informacion interna del sistema, servidor, bases de datos, conexiones, replicacion, accesos a disco,etc, etc. Son una implementacion de postgres y aunque en otras bases de datos probablente tengas acceso a la misma informacion, no esta estandarizado y cada uno lo ha implementado como le ha parecido mejor.
--
Rafael Martinez
PostgreSQL-es