Curso SQL Server administration

De Ardemans Wiki
Revisión a fecha de 10:39 6 mar 2012; Pmblanco (Discusión | contribuciones)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

FICHEROS DE BASES DE DATOS

Se pueden crear varios ficheros de bases de datos y se puede hacer separación de las tablas para que estén en diferentes ficheros, o incluso se puede hacer particionado de tablas para que los datos estén en dos ficheros diferentes. Esto puede servir para mejorar el rendimiento de la tabla, o incluso para hacer bacukp de datos nuevos y no hacer siempre backups de datos antiguos.


COPIADO DE TABLAS

Se puede hacer un copiado de tablas simplemente ejecutando

SELECT * INTO <tabla_destino> FROM <tabla.origen>


TRABAJO CON FICHEROS DE BASE SE DATOS

Con el comando ALTER DATABASE <databasename> se puede trabajar con los ficheros que tiene una DB. Se puede cambiar tamaño, renombrar ficheros, etc.

También se pueden borrar ficheros, pero antes hay que hacer un srink especial, diciendo que libere de tablas ese fichero

DBCC SRINKFILE (N'<nombre_fichero>, EMPTYFILE);

Cuidado con este comando que borrar datos que hay en ese fichero. Si tiene datos hay que moverlos manualmente a otro fichero.

cHEQUEO DE TABLAS

Se puede ver el comando DBCC CHECKDB; para hacer un checkeo del estado de una base de datos. Tiene parámetros para hacer reparaciones y más cosas. (consultar documentacion)


TRABAJO CON FILEGROUPS

Se pueden crear diferentes grupos de ficheros donde le diremos a las tablas donde ser almacenadas. Se suele usar un solo grupo de ficheros, pero tiene ventajas usar varios, por ejemplo almacenar tablas a otros filegrups en discos físicos diferentes (por ejemplo tablas de historicos en discos más lentos o remotos).

Para ver los filegroups

select * from sys.filegroups

Para decir que filegroup es el por defecto, usamos:

alter database <databasename> modify filegroup <filegroupname> DEFAULT;

Si quieres crear una tabla en un filegroup que no es el default se añade al CREATE TABLE la clausula ON <filegroupname> al final.