Sie sind auf Seite 1von 6

Tablespaces postgres

Tablespace en PostgreSQL permiten a los administradores definir los lugares, en el sistema de archivos, donde los archivos de la base de datos se pueden almacenar. Una vez creado, un Tablespace puede ser referenciado por su nombre a la hora de crear objetos de base de datos.

Mediante el uso de Tablespace, un administrador puede controlar la estructura del disco de instalacin de PostgreSQL. Esto es til por lo menos en dos formas. En primer lugar, si la particin o volumen en el que el grupo se ha inicializado se queda sin espacio y no puede extenderse, un espacio de Tablespace se pueden crear en una particin diferente y se utiliza hasta que el sistema puede ser reconfigurado. En segundo lugar, permitir a un administrador el uso acerca del conocimiento de los patrones de uso de objetos de base de datos para optimizar el rendimiento. Por ejemplo, un ndice que es muy usado puede ser colocado en una forma muy rpida, altamente disponible en disco, como un costoso dispositivo de estado slido. Al mismo tiempo, una tabla para almacenar datos que rara vez se utiliza o los resultados no son crticos podran estar almacenados en un sistema de disco menos costoso o ms lento. Para definir un tablespace, utilice la sentencia CREATE TABLESPACE comando, por ejemplo:: CREATE TABLESPACE fastspace LOCATION '/ mnt/sda1/postgresql/data'; La ubicacin debe ser una existente, directorio vaco que es de propiedad del usuario del sistema de PostgreSQL. Posteriormente, todos los objetos creados dentro de tablas se almacenan en los archivos bajo este directorio. Nota: Por lo general no tiene mucho sentido en la toma de ms de una lgica de tablas por sistema de archivos, ya que no puede controlar la ubicacin de los archivos individuales dentro de un sistema lgicode archivos. Sin embargo, PostgreSQL no garantice el cumplimiento de cualquier limitacin de este tipo y, de hecho, no es directamente consciente de los lmites del sistema de archivos en su sistema. Slo almacena los archivos en los directorios que decirle que para su uso. Creacin de TABLESPACES debe hacerse como una base de datos de superusuario, pero despus de que se puede permitir que la base de datos comn a los usuarios hacer uso de ella. Para ello, les concedan el permiso CREATE en l. Tablas, ndices, bases de datos enteras puede ser asignado a los TABLESPACES. Para ello, un usuario con el privilegio de CREATE en un determinado tablespace deben aprobar el nombre de tablas como un parmetro al comando. Por ejemplo, la siguiente crea una tabla en la tablespace space1:

CREATE TABLE foo (i int) TABLESPACE space1; Como alternativa, utilice el parmetro default_tablespace: SET default_tablespace = space1; CREATE TABLE foo (i int); Cuando se establece default_tablespace a nada, pero una cadena vaca, que suministra una clusula implcita TABLESPACE para CREATE TABLE y CREATE INDEX comandos que no tienen una explcita. Tambin hay un parmetro temp_tablespaces, que determina la colocacin temporal de tablas e ndices, as como los archivos temporales que se utilizan para fines tales como la clasificacin de grandes conjuntos de datos. Esto puede ser una lista de nombre de tablespace, en lugar de uno slo, de modo que la carga asociada a los objetos temporales se puede propagar a travs de mltiples tablaspaces

ndices
Para facilitar la obtencin de informacin de una tabla se utilizan ndices. El indice de una tabla desempea la misma funcin que el ndice de un libro: permite encontrar datos rpidamente; en el caso de las tablas, localiza registros. Una tabla se indexa por un campo (o varios). El ndice es un tipo de archivo con 2 entradas: un dato (un valor de algn campo de la tabla) y un puntero. Un ndice posibilita el acceso directo y rpido haciendo ms eficiente las bsquedas. Sin ndice, se debe recorrer secuencialmente toda la tabla para encontrar un registro. El objetivo de un indice es acelerar la recuperacin de informacin. La desventaja es que consume espacio en el disco y las inserciones y borrados de registros son ms lentas. La indexacin es una tcnica que optimiza el acceso a los datos, mejora el rendimiento acelerando las consultas y otras operaciones. Es til cuando la tabla contiene miles de registros. Los ndices se usan para varias operaciones: - para buscar registros rpidamente.

- para recuperar registros de otras tablas empleando "join". Es importante identificar el o los campos por los que sera til crear un indice, aquellos campos por los cuales se realizan operaciones de bsqueda con frecuencia. Hay distintos tipos de ndices, a saber: 1) "primary key": es el que definimos como clave primaria. Los valores indexados deben ser nicos y adems no pueden ser nulos. PostgreSQL le da el nombre "PRIMARY". Una tabla solamente puede tener una clave primaria. 2) "index": crea un indice comn, los valores no necesariamente son nicos y aceptan valores "null". Podemos darle un nombre, si no se lo damos, se coloca uno por defecto. "key" es sinnimo de "index". Puede haber varios por tabla. 3) "unique": crea un indice para los cuales los valores deben ser nicos y diferentes, aparece un mensaje de error si intentamos agregar un registro con un valor ya existente. Permite valores nulos y pueden definirse varios por tabla. Podemos darle un nombre, si no se lo damos, se coloca uno por defecto. Todos los ndices pueden ser multicolumna, es decir, pueden estar formados por ms de 1 campo. En las siguientes lecciones aprenderemos sobre cada uno de ellos. Los nombres de ndices aceptan todos los caracteres. Una tabla puede ser indexada por campos de tipo numrico o de tipo caracter. Tambin se puede indexar por un campo que contenga valores NULL, excepto los PRIMARY. Dijimos que hay 3 tipos de ndices: El ndice llamado primary se crea automticamente cuando establecemos un campo como clave primaria. Los valores indexados deben ser nicos y adems no pueden ser nulos. Una tabla solamente puede tener una clave primaria. Puede ser multicolumna, es decir, pueden estar formados por ms de un campo. Vamos a otro tipo de ndice comn. Un ndice comn se crea con "create index", los valores no necesariamente son nicos y aceptan valores "null". Puede haber varios por tabla. Vamos a trabajar con nuestra tabla "libros".
create table libros( codigo int not null,

titulo varchar(40), autor varchar(30), editorial varchar(15), precio decimal(6,2) );

Un campo por el cual realizamos consultas frecuentemente es "editorial", indexar la tabla por ese campo sera til. Creamos un ndice:
create index I_libros_editorial on libros(editorial);

Debemos definir un nombre para el ndice (en este caso utilizamos como nomenclatura el carater I, luego el nombre de la tabla y finalmente el o los nombres del campo por el cual creamos el ndice. Luego de la palabra clave on indicamos el nombre de la tabla y entre parntesis el nombre del campo o los campos por el cual se indexa.

Veamos otro tipo de ndice llamado "nico". Un ndice nico se crea con "create unique index", los valores deben ser nicos y diferentes, aparece un mensaje de error si intentamos agregar un registro con un valor ya existente. Permite valores nulos y pueden definirse varios por tabla. Crearemos un ndice nico por los campos titulo y editorial:
create unique index I_libros_tituloeditorial on libros(titulo,editorial);

Para eliminar un ndice usamos "drop index". Ejemplo:


drop index I_libros_editorial; drop index I_libros_tituloeditorial;

Se elimina un ndice con "drop index" seguido de su nombre. Podemos eliminar los ndices creados, pero no el creado automticamente con la clave primaria.

Esquemas
Los esquemas son como "agrupaciones" de tablas. Por ejemplo podras tener un sistema multicompaa, y en una misma base de datos pero con diferentes esquemas mantener la infomacin.

por ejemplo compania1.clientes y compaia2.clientes Las tablas clientes tendran la misma estructura y el mismo nombre pero almacenadas en esquemas diferentes

Instalacin de PstgresSQL en Windows 64 bits


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

Paso 1 Descargar:
Si no tiene el archivo de postgres.. bajenlo de esta pgina: http://www.enterprisedb.com/products/pgdownload.do#windows esta es la pg oficial de postgres

Paso 2 Instalar :
ahora a instalarlo... dar click derecho al archivo.. y ejecutarlo como administrador.

Le dan siguiente..siguiente.. siguiente... ponen la contrasea (para el usuario postgres)... dejan el puerto que esta y le dan siguiente... todo siguiente y se instalar PERO AQUI NO TERMINA!!! les saldra el error...

y ahora sigan al paso 3

Paso 3 Dar permisos a la carpeta de Postgres:


una vez que les salio el error...le dan aceptar.. y dejam que termine el proceso de instalacin... y le dan finalizar.. ahora lo que va a hacer es ir a la siguiente direccin.. C:\Program Files esta es para windows 7.. para xp y vista son similares.. buscan la carpeta de postgres.. y entran a sus Propiedades

Entran en la pestaa de Seguridad... editar.. y les sale una nueva ventana... selecionan Usuario y le dan en Control Total.. para que quede as

y le dan aceptar..

Paso 4 Volver a Instalar :


Vuelven a ejecutar el archivo de Postgres.. en modo administrador... dandole click derecho.. y vuelvan a darle siguietne.. siguiente... sin olvidar de poner la contrasea y listo.. ahora si podran instalar Postgres

Espero que les servia =) Saludos.. dudas o comnetarios.. no olviden de escribi

Das könnte Ihnen auch gefallen